Ciao a tutti,
sto usando LiveValidation per validare i dati di un mio form.
Funziona tutto correttamente, ma il problema è che mi invia il form anche quando i dati non sono corretti.
Vorrei capire come disabilitare l'invio finché non sono compilati tutti i campi correttamente, oppure far uscire un messaggio senza action..
questo è il mio codice:
Nome e cognome<input type="text" name="nome" id="nome">
Indirizzo<input type="text" name="indirizzo" id="indirizzo">
Telefono<input type="text" name="telefono" id="telefono" >
Email<input type="text" name="email" id="email">
<input type="checkbox" value="1" name="check" id="check">ok
>
<input type=submit value=invia>
</form>
<script type=\"text/javascript\">
var nome= new LiveValidation('nome', {validMessage: "OK!" });
nome.add(Validate.Presence, {failureMessage: "Il campo obbligatorio!" });
var indirizzo = new LiveValidation('indirizzo', {validMessage: "OK!" });
indirizzo.add(Validate.Presence, { failureMessage: \"Il campo obbligatorio!\" });
var telefono = new LiveValidation('telefono', {validMessage: \"OK!\" });
telefono.add(Validate.Presence, {failureMessage: \"Il campo obbligatorio!\" });
var email = new LiveValidation('email', {validMessage: \"OK!\" });
email.add(Validate.Presence, { failureMessage: \"Il campo obbligatorio!\" });
email.add(Validate.Email, { failureMessage: \"Devi inserire un indirizzo e-mail valido!\" } );
var check = new LiveValidation('check', {validMessage: \"OK!\" });
check.add(Validate.Acceptance, { failureMessage: \"Devi spuntare il checkbox!\" } );
Poi ho aggiunto (sperando che servisse a qualcosa):
var automaticOnSubmit = nome.form.onsubmit;
nome.form.onsubmit = function(){
var valid = automaticOnSubmit();
if(valid){
this.form.action='pagina.php;this.form.submit()
};
return false;
}
ma non mi cambia niente..
sicuramente l'ultima parte è solo "tentata".
Avete qualche esempio /consiglio?
grazie