2012-07-22 4 views
0

Je travaille sur ce formulaire qui est supposé valider le formulaire avant de soumettrevalidation formulaire javascript ne fonctionne probablement pas

$(document).ready(function() { 
    $("#form3").validate(); 
    if ($('#form3').valid()) $('#form3').submit(); 
}); 

Mais le problème est le suivant: il imprime la (erreur de champs vides) lorsque le formulaire est chargé.


MISE À JOUR: la fonction fonctionne maintenant Horraaay :) avec le code suivant:

 <script> 
     $(document).ready(function(){ 
     $("#form3").validate(); 
    }); 
    </script> 

Le seul problème était la forme d'entrée nom .. je « submit » comme nom de l'entrée forme cependant avant était sur un nom différent.

Répondre

1

Placez votre code sur l'événement de soumission de formulaire. Quelque chose comme ceci:

$(document).ready(function() 
{ 
    $("#form3").validate(); 
    $("#form3").submit(function(event)  
    { 
     if (!$(this).valid()) 
     { 
      event.preventDefault(); 
     } 
    }); 
}); 
+1

Pas besoin d'utiliser * both * 'preventDefault' et' return false'. – ThiefMaster

+0

Vrai, juste un filet de sécurité. Mais peut-être exagéré/inutile. –

+0

'$ (this) .validate' initialise le plugin, je pense que vous voulez le faire plus tôt. – Esailija

0

Je pense que par défaut après validation réussie il soumettra le formulaire. Cependant, je ne sais pas pourquoi vous devez renvoyer le formulaire.

Si vous devez soumettre manuellement, vous pouvez utiliser l'espace SubmitHandler pour envoyer votre formulaire.

$("#form3").validate({ 
    submitHandler: function(form) {  
    form.submit(); 
    } 
}); 
0

Je résolu le problème et maintenant il fonctionne ... Ce est une erreur mineure!

J'ai changé le nom et l'identifiant du bouton de soumission en (Soumettre).

Questions connexes