2009-12-18 7 views
1

J'ai une fonction de validation de formulaire qui boucle à travers les éléments de formulaire de vérification des champs vides - le code ci-dessous:Javascript - retour erreur fausse

function formValidate(ourform){ 
    var formelems = document.getElementById(ourform).elements; 

    for (var i=0; i<formelems.length; i++){ 
    if(formelems[i].value == "") { 
    alert("Empty Field(s). Please fill in all the fields."); 
    return false; 
    } 
    }  
} 

le problème est que ma forme ne retourne pas faux s'il y a un champ vide - Il traite le formulaire. J'ai résolu cela avant mais maintenant je ne me souviens plus comment.

Merci.

+1

Collez le javascript complet, la question n'est pas clair – valli

+0

Votre code a été dépouillé, s'il vous plaît le coller à nouveau avec le code exemple de bouton appliqué – rossoft

+0

également utiliser la mise en forme .... –

Répondre

3

Fondamentalement, la réponse est que dans votre exemple, vous n'êtes pas vraiment quoi que ce soit de retour. Dans l'exemple de Pandiya, il retourne vrai/faux selon les conditions. Rappelez-vous d'utiliser également une déclaration de retour dans ce que vous utilisez, probablement dans votre exemple appeler même ce serait

<form blah blah blah onsubmit="return formValidate(this)"> 
+0

Comment stupide de moi, j'ai oublié d'ajouter la partie «retour» dans mon formulaire. Merci Jon. –

+0

pas de problème, j'ai fait ça tant de fois. regarder un morceau de code pendant trop longtemps et vous êtes incapable de le regarder avec des yeux frais. vous allez marquer la réponse? – user48202

+0

déjà fait cela. –

0

Hai essayez ceci,

function checkForEmpties(form) { 
var i; 
var formElements = form.elements; 


for (i=0; i<formElements.length; i++) 
    { 
    if (formElements[i].type == "text") { 
     if (formElements[i].value != "") { 
      return true; 
      break; 
     } 
    } 
    else if (formElements[i].type == "checkbox") { 
     if (formElements[i].checked) { 
      return true; 
      break; 
     } 
    } 

} 
return false; 
    } 
+0

Pourquoi les 'break's? – Victor