Ciao, ho un campo input per cui voglio permettere solo di inserire
numeri, la virgola e il punto.
Usando jquery (ma non dovrebbe essere importante) assegno la funzione
all'input in questo modo:
e la funzione onlyNumbers è fatta cosi:codice:$('.only_numbers').bind('keydown', function(e) { onlyNumbers(e); });
Sia con firefox che con explorer la funzione c'è qualcosa che non va neicodice:function onlyNumbers(e) { key = e.keyCode; if(debug) log("onlyNumbers\nkey_code:"+key); if ((key==null) || (key==0) || (key==8) || (key==9) || (key==13) || (key==27) ) return true; keychar = String.fromCharCode(key); if(debug) log("keychar:"+keychar); // numbers if((("0123456789.,").indexOf(keychar) > -1)) { if(debug) log('carattere accettato'); return true; } if(debug) log('carattere NON accettato'); return false; }
codice caratteri.
Il log seguente mostra quello che succede se inserisco "a1,3."
I miei file php/tpl sono in utf8, l'header della pagina è utf8 e i filecodice:onlyNumbers key_code:65 keychar:A carattere NON accettato onlyNumbers key_code:49 keychar:1 carattere accettato onlyNumbers key_code:188 keychar:¼ carattere NON accettato onlyNumbers key_code:51 keychar:3 carattere accettato onlyNumbers key_code:190 keychar:¾ carattere NON accettato
javascript pure.
Qualche consiglio?
grazie, ciao

Rispondi quotando
