|
Forum Flash, Actionscript, PHP e MySQL
|
|
|
|
|
|
| Autore |
Messaggio |
Eugene
principiante


Età: -1969
Registrato: 08/09/06 14:48
Messaggi: 60
Località: Dagobah
|
Oggetto: Verifica campi form (select) tramite js
Inviato: 03.11.06 | 00:07 |
|
|
Buonasera
In un form utilizzo una funzione js per verificare la corretta compilazione dei campi obbligatori.
Sostanzialmente, lo script utilizzato è il seguente:
if (document.nuovoUtente.nome.value=="") {
alert("Inserire il nome.");
document.nuovoUtente.nome.focus()
document.nuovoUtente.nome.select()
document.nuovoUtente.nome.className = "boxHigh";
return false;
} else {
document.nuovoUtente.nome.className = "boxOn";
}
In questo modo, oltre a verificare se il campo in oggetto sia stato compilato o meno, viene effettuata un'altra operazione: nel caso il campo sia vuoto, viene automaticamente selezionato e viene modificata la classe css associata in modo da cambiarne, ad esempio, il colore.
Così facendo il campo da riempire è evidenziato ed anche un deficiente riuscirebbe a trovarlo.
Lo script funziona perfettamente con i normali campi di input, ma le cose cambiano quando si ha a che fare con un select.
Infatti, se un campo select obbligatorio viene lasciato sulla prima selezione (solitamente la dicitura "scegli una voce" o simile) pari a valore nullo (""), viene correttamente attivata la finestra di alert che mi avvisa dell'errore, ma quando clicco sull'ok dell'alert invece che tornare al form viene caricata la pagina (in questo caso php) che invia il form in questione, evento che dovrebbe verificarsi solo in seguito alla corretta compilazione di tutti i campi obbligatori e relativa verifica.
Ribadisco che lo script utilizzato è esattamente lo stesso, solo che con i campi select si presenta il piccolo inconveniente sopra riportato.
Qualcuno è in grado di aiutarmi ad eliminare questo problema?
Grazie. ____________________________________________________________ <-- Fare. O non fare. Non c'è provare. -->
www.yodastudio.com
segui YODA Studio su facebook |
|
| Torna in cima |
|
|
Sponsor
|
|
 |
Eugene
principiante


Età: -1969
Registrato: 08/09/06 14:48
Messaggi: 60
Località: Dagobah
|
Oggetto:
Inviato: 03.11.06 | 03:25 |
|
|
Ecco la soluzione:
if (document.nuovoUtente.nome.selectedIndex =="") {
alert("Inserire il nome.");
document.nuovoUtente.nome.focus()
document.nuovoUtente.nome.className = "boxHigh";
return false;
} else {
document.nuovoUtente.nome.className = "boxOn";
}
trattandosi di un select, devo usare selectedIndex e non value.
Infine, non devo usare il comando select trattandosi per l'appunto di un campo select.
Buonanotte ____________________________________________________________ <-- Fare. O non fare. Non c'è provare. -->
www.yodastudio.com
segui YODA Studio su facebook |
|
| Torna in cima |
|
|
Coach
amministratore


Età: -1981
Registrato: 31/01/03 13:50
Messaggi: 4549
Località: Verona
|
Oggetto:
Inviato: 03.11.06 | 11:54 |
|
|
Ciao Eugene, ormai hai risolto... si fanno le ore piccole eh? :)
P.S: ti sposto nella sezione più adatta non trattandosi di Flash. ____________________________________________________________
Il Forum è uno strumento di condivisione, oltre a fare DOMANDE, si possono anche dare RISPOSTE! |
|
| Torna in cima |
|
|
Eugene
principiante


Età: -1969
Registrato: 08/09/06 14:48
Messaggi: 60
Località: Dagobah
|
Oggetto:
Inviato: 03.11.06 | 12:16 |
|
|
Si fanno le ore piccole sì.
A volte mi chiedo chi me lo faccia fare, non mi sembra ne valga tanto la pena.
Ma dove avevo aperto il thread?
Probabilmente avevo confuso "action script" con "java script".
Chiedo scusa, l'età comincia a farsi sentire... ____________________________________________________________ <-- Fare. O non fare. Non c'è provare. -->
www.yodastudio.com
segui YODA Studio su facebook |
|
| Torna in cima |
|
|
Coach
amministratore


Età: -1981
Registrato: 31/01/03 13:50
Messaggi: 4549
Località: Verona
|
Oggetto:
Inviato: 03.11.06 | 12:26 |
|
|
ma figurati... nessun problema :)
Anzi grazie di aver postato la soluzione, così la discussione magari tornerà utile a qualche altro utente in futuro. ;)
. ____________________________________________________________
Il Forum è uno strumento di condivisione, oltre a fare DOMANDE, si possono anche dare RISPOSTE! |
|
| Torna in cima |
|
|
|
|
Non puoi inserire nuovi Topic in questo forum Non puoi rispondere ai Topic in questo forum Non puoi modificare i tuoi messaggi in questo forum Non puoi cancellare i tuoi messaggi in questo forum Non puoi votare nei sondaggi in questo forum Non puoi allegare files in questo forum Puoi downloadare gli allegati in questo forum
|
|