webForumDet fria alternativet

onKeyDown

JavaScript

3 svar · 235 visningar · startad av Calippo

Medlem sedan aug. 2002536 inlägg
Frågan#1

Hej

Har ett problem med ett skript.

Jag har två textrutor (Ruta1 och Ruta2 kan vi kalla dom)

Jag har gjort en beräkning när man skriver något i dom.
När man skriver nåt i den ena så ska den kolla om det finns nåt i den andra oxå. Om bägge innehåller ett tal så ska Ruta1 divideras med Ruta2. Värdet visas i Ruta3.
Beräkningen sker med onKeyDown.

Så långt är det inga problem, men när man klickar på knappen bakåt (<---) på tangentbordet (kommer inte på vad den heter, men den ligger över "Enter" knappen) för att ta bort en siffra i Ruta1 eller Ruta2 så uppdateras inte resultatet.
Använder man "Del" knappen så funkar det.

Har provat lite olika varianter med "window.event.keyCode=='8'" men får det inte att fungera.

Hur gör jag?

Medlem sedan aug. 20039 340 inlägg
#2

Jag skulle inte använt onkeydown (Ska f.ö. stavas med små bokstäver!)
Jag skulle gjort så här:

<HTML>

<script>
function docalc(){
  tal1 = parseInt(document.getElementById("input1").value);
  tal2 = parseInt(document.getElementById("input2").value);
  if (isNaN(tal1) || isNaN(tal2)){
    document.getElementById("output").value="Fyll i två tal!"
    return;
  }

  //Om nämnaren är 0, visa felmess
  if ( tal2 == 0) {
    document.getElementById("output").value="Division med 0!"
    return;
  }
  document.getElementById("output").value = tal1/tal2;

}
</script>
<body onload="docalc();">

Nämnare: <input value="0" name="input1" onkeypress="docalc();" onchange="docalc();" onpropertychange="docalc();" /><br />
Täljare: <input value="1" name="input2" onkeypress="docalc();" onchange="docalc();" onpropertychange="docalc();" /><br /><br />
Kvot: <input name="output" />

</body>
</HTML>
Medlem sedan aug. 2002536 inlägg
#3

Det funka med "onpropertychange".
Har aldrig hört talas om den innan.

Dreamweaver skriver onBlur, onKeyDown m.m. och det funkar, så det spelar väl ingen roll om man har stora eller små bokstäver? Eller är det nån browser som kan få problem med det?

Medlem sedan aug. 2000374 inlägg
#4

Calippo skrev:

[...]Dreamweaver skriver onBlur, onKeyDown m.m. och det funkar, så det spelar väl ingen roll om man har stora eller små bokstäver?[...]

Om du vill ha väl formad xml/xhtml så ska alla element och attribut-namn vara gemener.

263 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
135 ms — hämta tråd, inlägg och bilagor (db)
120 ms — ändringar (db)