jquery - 使用 AJAX 提交表单后如何重置验证?

标签 jquery ajax html forms

<分区>

我有一个用 html5 验证验证然后用 AJAX 提交的表单,然后输入字段被重置,它正在工作。

我的问题是,在有效提交后,消息已发送,输入已清除,但 html5 验证仍然将我的空白字段列为不正确的字段。

HTML:

 <form method="post" action="mailer.php" class="contact-form" id="cform">
     <input type="text" name="name" placeholder="Name" required />
     <input type="text" name="phone"  placeholder="Phone" required />                       
     <input type="email" name="email" placeholder="Email" required />                       
     <textarea name="message" placeholder="Message" required></textarea>
     <input type="submit" class="submit-btn" id="submit-btn" value="Send your message" />
     <div id="success"></div>
 </form>

JQUERY:

 $('#submit-btn').click(function(){
     if($("#cform")[0].checkValidity()) {

         $.post("mailer.php", $("#cform").serialize(),  function(response) {
             $('#success').html(response);
             $("#cform")[0].reset();
         });
         return false;

     } else console.log("invalid form");
 });

最佳答案

您需要停止默认的提交行为。

 $('#submit-btn').click(function(e){
     e.preventDefault();
     // ...
 }

或者您可以只使用 type="button" 而不是 type="submit"

关于jquery - 使用 AJAX 提交表单后如何重置验证?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18694083/

相关文章:

javascript - 在 WordPress 插件开发中使用 javascript 验证

java - 如何发送 JSP 作为对 AJAX 调用的响应

php - 记录 AJAX + PHP 代码的最佳方式?

html - 如何在 Ionic 4 中将边界半径添加到 ion-img

php - 同一页面上有两个ajax,但第二个没有得到第一个已更改的内容

javascript - jquery.ajax 到底什么时候运行失败回调?

javascript - 使用ajax请求在同一页面中显示部分内容

javascript - 在 'use strict' 错误上遇到 JS/jQ 问题

javascript - CORS问题不一致

javascript - 垂直标签不起作用