Tasto enter

martedì 26 luglio 2011 - 11.52

tigre Profilo | Junior Member

Ho questo codice per accettare solo i campi numerici e virgola ecc.
come posso fare in modo che venga accettato anche il tasto Invio?

if (charCode !=48 && charCode !=49 && charCode !=50 && charCode !=51 && charCode !=52 && charCode !=53 && charCode !=54 && charCode !=55 && charCode !=56 && charCode !=57) {

alx_81 Profilo | Guru

>come posso fare in modo che venga accettato anche il tasto Invio?
>if (charCode !=48 && charCode !=49 && charCode !=50 && charCode
>!=51 && charCode !=52 && charCode !=53 && charCode !=54 && charCode
>!=55 && charCode !=56 && charCode !=57) {
ciao,
potresti spiegare meglio il tuo scenario?
Di cosa si tratta? Devi accettare solo alcuni valori in un campo?
Vuoi scatenare eventi su di un campo?
Che controllo è? Una textarea? Una textbox?
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi

tigre Profilo | Junior Member

lo scenario è questo:
ho una funzione che accetta solo numeri. fin qui tutto bene.
Poi ho voluto inserire anche un altra funzione che sostituisce il tasto tab con l'invio.
tutte e due le funzioni prese singolarmene funzionano. ma se li metto insieme giustamente non funziona il tasto invio
perchè la funzione che accetta numeri , quando premo il tasto invio mi dice che il campo non accetta caratteri diversi dai numeri.

Quindi dovrei, nella funzione che accetta solo numeri inserire anche di accettare il codice ascii del tasto invio.


alx_81 Profilo | Guru

>Quindi dovrei, nella funzione che accetta solo numeri inserire
>anche di accettare il codice ascii del tasto invio.
controlla prima se hai premuto il tasto invio, ma proprio prima di effettuare i controlli sui numeri..
In poche parole devi intercettare la pressione del tasto, e come prima cosa, verificare che si tratti di un invio per gestirlo diversamente dal comportamento standard..
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi

tigre Profilo | Junior Member

ma non sai che codice ascii ha il tasto invio???

alx_81 Profilo | Guru

>ma non sai che codice ascii ha il tasto invio???
il 13.. CARRIAGE RETURN. La tabella ascii la trovi subito con "ASCII TABLE" su google.

qui c'è anche un esempio per controllare il keypress come invio:
http://dev.kanngard.net/Permalinks/ID_20050426091851.html
--
Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi

tigre Profilo | Junior Member

io ho uno script che riconosce il tasto invio e funziona.
solo che su una casella dove richiama la funzione di accettazione di solo numeri giustamente quando premo invio su quella casella mi dice carattere non valido.

InsettoScoppiettato Profilo | Junior Member

Se fai così come consigliato sotto non funziona?

Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
Nota: l'if esegue qualcosa se non hai inserito un numero o una NewLine on un CR, non l'esatto contratio come invece mi aspetterei... però mancando tutto il resto dello snippet immagino che sia frutto di una particolare scelta che hai fatto nel corpo dell'if.



Alessandro Parma
Programmazione multipla scoposta con prognosi ancora da definirsi
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2017
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5