如何停止表单提交,如果表单不验证

How to stop form submitting if form is not validated

本文关键字:表单 验证 如果 何停止 表单提交      更新时间:2023-09-26

我正在使用jquery验证表单,但问题是当表单被验证时,无论表单是否被验证或是否被提交。我想要的当表单被验证,如果有一些错误(如。空字段),那么表单一定不会被提交。请帮忙解决我的问题。

<body>
    <script type="text/javascript">
    $(document).ready(function() {
      $("#login_user").validate({
              rules: {
                txtemail: {
                  required: true
                },
                txtpassword: {
                  required: true
                }
              },
              messages: {
                txtemail: {
                  required: "Please enter Username or Email Address"
                },
                txtpassword: {
                  required: "Please enter Password"
                }
              }
      });
    });
    </script>
    <form name="login_user" id="login_user" action="index.php" method="post">
    <input name="txtemail" type="text" placeholder="Username"/> 
    <input name="txtpassword" type="password" placeholder="Password"/>  
    <a id="submit" onclick='document.forms["login_user"].submit(); return false;'>Login</a>
    </body>

变化

 <a id="submit" onclick='document.forms["login_user"].submit(); return false;'>Login</a>

 <input type="submit" value="Login" />

和关闭表单标签

<form name="login_user" id="login_user" action="index.php" method="post">
    <input name="txtemail" type="text" placeholder="Username"/> 
    <input name="txtpassword" type="password" placeholder="Password"/>  
    <input type="submit"  value="Login" />
</form>

添加e.preventDefault():

$(document).ready(function() {
   $('#login_user').on('submit', function(e) {
      e.preventDefault();
      //do validation and if validation passes
      $('#login_user').submit();
  });
});