2015-07-06 36 views
1

我有一个表单,我通过jQuery验证一些字段,并在检查一切正确后,我想提交表单。所以首先我要防止表单在提交按钮被点击时提交,我执行验证,最后如果一切正确,我提交表单。但是我的表单直到提交按钮被点击两次才被提交。我该如何解决它?表单提交后preventDefault不工作,直到提交按钮被第二次点击

$('#form1').submit(function(e) { 
    e.preventDefault(); 
    ... // Validation actions 
    if (form_ok) { 
     $(this).unbind('submit').submit(); 
    } 
}); 

感谢

+0

http://jsfiddle.net/arunpjohny/owjbbu06/2/ - 应该没问题 –

+0

注意事项:if(!form_ok){e.preventDefault();而不是。 – JJJ

回答

1

WORKING FIDDLE

CODE

$(document).ready(function(){ 
    $('#form1').submit(function(e) { 
     var form_ok=$(":text").val().length>0; 

     if(!form_ok) 
     { 
      e.preventDefault(); 
     } 

    }); 
}); 

HTML

<form id="form1"> 
    <input type="text" /> 
    <input type="submit" value="Submit" /> 

</form> 
相关问题