Visualizzazione dei risultati da 1 a 3 su 3
  1. #1

    Verifica campi form (select) tramite js

    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

  2. #2
    Utente di HTML.it L'avatar di Xinod
    Registrato dal
    Sep 2000
    Messaggi
    13,649
    - non controllare il value, ma che il document.nomeForm.nomeSelect.selectedIndex sia diverso da 0
    - non dare il comando .select() nel caso si tratti di campo select
    ciao

  3. #3
    Powerful!

    Grazie mille per l'aiuto.

    Se posso approfittare, avrei bisogno di un altro suggerimento, stavolta per il campo del CAP.

    Vorrei fare un controllo sul numero di cifre inserite.
    Già impiego una funzione che consente solamente l'inserimento di numeri, poi ho impostato il numero massimo di caratteri su 5, ma non riesco a fare in modo che mi dia errore nel caso di un numero inferiore di caratteri.

    Ho provato con
    if (document.nuovoUtente.cap.length<5) {
    alert("CAP non corretto.");
    document.nuovoUtente.cap.focus()
    document.nuovoUtente.cap.select()
    document.nuovoUtente.cap.className = "boxHigh";
    return false;
    }

    ma non funziona.

    Come dovrei fare?

    Grazie ancora e buonanotte.
    <-- Fare. O non fare. Non c'è provare. -->

    www.yodastudio.com
    segui YODA Studio su facebook

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.