Jostain syystä tämä funktio ei toimi mozillassa, mutta IE:ssä kylläkin.
Funktio tarkistaa onko syötetty arvo numero.
function TarkastaNumeerisuus(tapahtuma) { if (tapahtuma.keyCode < 48 || tapahtuma.keyCode > 57) { event.keyCode=0; alert("Syötä numero"); } }
ja funktiokutsu..
onKeyPress="TarkastaNumeerisuus(event);"
Mozillan JavaScript Console sanoo, että "event is not defined"
Miten tätä on muutettava, jotta se toimisi myös Mozillalla.
Kokeileppa firefoxiin which keycoden tilalle --> http://www.w3schools.com/jsref/jsref_onkeypress.
Tuo onnistui muuten paitsi Mozillassa ei toimi myöskään backspace laatikossa, jossa käytän tuota. IE:ssä toimii.
Pitäisi saada toimimaan..
no tuota w3schoolsin esimerkkiä muokkaamalla voisi olla esim tällainen:
<html> <body> <script type="text/javascript"> function noNumbers(e) { var keynum var keychar var numcheck if(window.event) // IE { keynum = e.keyCode } else if(e.which) // Netscape/Firefox/Opera { keynum = e.which } keychar = String.fromCharCode(keynum) numcheck = /\d/ if(keynum > 8 || keynum < 8){ return numcheck.test(keychar) } } </script> <form> <input type="text" onkeypress="return noNumbers(event)" /> </form> </html>
Hyvin toimii. Kiitoksia.
Aihe on jo aika vanha, joten et voi enää vastata siihen.