2009-09-13 8 views
0

Le code de vérification .html est envoyé même si javascript renvoie la valeur false.Le formulaire est soumis même si le code JavaScript est incorrect.

<form id="form1" name="form1" method="post" action="sub.jsp" onsubmit="return getValue()"> 
<input type="text" id="userName" name="userName" onkeyup="return getValue()" /> 
<input type="submit" name="Submit" value="Submit" /> 
</form> 

    <script type="text/javascript" > 
    function getValue() 
     { 
     var userName=document.getElementById("userName"); 
      document.getElementById("userNamemsg").innerHTML=""; 
       if(userName.value=="") 
       { 
      var mdiv=document.getElementById("userNamemsg"); 
        mdiv.innerHTML="Error:Required Fields cannot be blank!"; 
        form.userName.focus(); 
        return false; 
       } 
       return true; 
    } 
+0

Veuillez mettre à jour votre exemple de code: (1) l'élément script n'est pas fermé, (2) je ne trouve pas l'élément userNamemsg (3) utilise userName.focus() au lieu de form.userName.focus(); –

Répondre

3

1) essayez de changer la ligne form.userName.focus(); à document.form1.userName.focus();

OU

2) essayer de soumettre de la fonction elle-même:

<input type="button" name="Submit" value="Submit" onclick="getValue()" /> 

<script type="text/javascript" > 
function getValue() 
    { 
     var userName=document.getElementById("userName"); 
     document.getElementById("userNamemsg").innerHTML=""; 
      if(userName.value=="") 
      { 
       var mdiv=document.getElementById("userNamemsg"); 
       mdiv.innerHTML="Error:Required Fields cannot be blank!"; 
       document.form1.userName.focus();//I think this is the problem 
       return false; 
      } 
      document.form1.submit(); 
} 
</script> 
+0

document.form1 travaillé. Merci. – Chava

1

Je pense qu'il y a des erreurs dans votre code JavaScript qui se produisent avant vos déclarations de retour. Corrigez ces erreurs et votre code devrait fonctionner.

+0

+1 réponse non spécifique mais c'est vrai: dans une fonction comme onubmit ou onclick, si votre JavaScript est en erreur, le formulaire sera envoyé ou le lien suivi quand même. Si vous n'avez pas activé la case d'erreur sur les erreurs de script, il est difficile de savoir ce qui s'est passé. – bobince

-1

alternativement, vous faites le gestionnaire de clic sur le soumettre bouton pour retourner false.

Questions connexes