Ciao è possibile in js controllare su un determinato campo di un form che vengano inseriti i punti come separatori decimali e non virgole? se si posso vedere un esempio?
Ciao è possibile in js controllare su un determinato campo di un form che vengano inseriti i punti come separatori decimali e non virgole? se si posso vedere un esempio?
... puoi utilizzare questo piccolo script
mentre per quanto riguarda la input devi aggiungerecodice:function verifyInput( objEvent ){ // il 44 e\' il codice della virgola // questo esempio funziona solo con IE if( objEvent.keyCode==44 ) { return true; } }
onkeypress="return verifica( event )"
ciao![]()
intendevo qualcosa con una finestra di alert... mi segui?
Perche` usare strumenti che funzionano inunsolo browser?
Con JS ci sono gli strumenti per fare il tutto in modo corretto per tutti i browser:
Se e` solo togliere le virgole e sostituirle con punti:
<input type="text" ... onchange="this.value=this.value.replace(/\,/g,'.');">
Se invece vuoi anche mandare l'alert:
<input type="text" ... onchange="controlla(this);">
dove la funzione controlla sara` di questo tipo (da inserire in uno script della head):codice:function controlla(tt) { if(tt.value.match(/\,/) { alert("la virgola non e` ammessa"); // tt.value = tt.value.replace(/\,/g,'.'); return false; // in alternativa alla correzione (riga prec.) } }
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati
grazie ma continua a passare la virgola...codice:<script type="text/javascript" language="javascript"> function controlla(tt) { if(tt.value.match(/\,/) { alert("la virgola non e` ammessa"); // tt.value = tt.value.replace(/\,/g,'.'); return false; // in alternativa alla correzione (riga prec.) } } </script> <input name="PPM" value="<%=rec("PPM")%>" onchange="controlla(this);">
Cosa vuol dire "passare" la virgola?
Quello script controlla che non ci sia la virgola, ma non fa altro.
Si puo` sostituire il punto al posto della virgola (con il pezzo di script commentato), o si puo` impedire la spedizione del form, chimando lo scritp sull'onsubmit del form (questo pero` non era richiesto).
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati
forse non mi spiego bene... ho un campo dove va scritta una cifra decimale, siccome qualcuno ha il vizio di separare i decimali inserendo una virgola (invece del punto) vorrei fargli sapere con una alert che ha appena inserito una virgola nel campo dove invece è previsto il punto come separatore decimale.Originariamente inviato da Mich_
Cosa vuol dire "passare" la virgola?
Quello script controlla che non ci sia la virgola, ma non fa altro.
Si puo` sostituire il punto al posto della virgola (con il pezzo di script commentato), o si puo` impedire la spedizione del form, chimando lo scritp sull'onsubmit del form (questo pero` non era richiesto).
Con lo script da te suggerito e che ho postato, nel campo in questione inserisco una virgola e la spedizione del form parte ugualmente mi segui?
Ti seguo perfettamente, ma il problema quindi e` un altro rispetto da quanto da te chiesto all'inizio. Tu vuoi impedire che il form venga spedito, non solo avvisare l'utente.
Per questo devi applicare il controllo al submit del form:
<form ... onsubmit="controlla(this.NOMECAMPO);">
dove NOMECAMPO e` definito dall'attributo name del campo
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati
Scusa non ho capito... NOMECAMPO è il nome del campo del form che devo controllare dove non ci sia la virgola? e se i campi su cui eseguire il controllo sono più d'uno???![]()
E se non continuassi a chiedere modifiche?
O, in altre parole, se chiedessi tutto o esponessi il tuo problema per intero?
Nuova politica di maggiore severita` sui titoli delle discussioni: (ri)leggete il regolamento
No domande tecniche in messaggi privati