2009-09-13 7 views
0

Код формы проверки .html получает, даже если javascript возвращает false.Форма отправляется, даже если JavaScript fun возвращает false

<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

Пожалуйста, обновите свой пример кода: (1) элемент сценария не закрыт, (2) я не могу найти элемент userNamemsg (3) использовать userName.focus() вместо form.userName.focus(); –

ответ

3

1) попробуйте изменить линию form.userName.focus(); к document.form1.userName.focus();

ИЛИ

2) попробуйте отправить из самой функции:

<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 работал. Благодарю. – Chava

1

Я думаю, что есть ошибки в вашем JavaScript-коде, которые происходят до ваших операторов возврата. Исправьте эти ошибки, и ваш код должен работать.

+0

+1 неспецифический ответ, но это правда: в функции, подобной onsubmit или onclick, если ваши ошибки JavaScript отсутствуют, форма будет отправлена ​​или ссылка будет следовать в любом случае. Если вы не включили окно ошибки при ошибках скрипта, может быть неясно, что произошло. – bobince

-1

в качестве альтернативы, вы делаете обработчик щелчка по отправке чтобы вернуть значение false.

Смежные вопросы