首页 > 解决方案 > bootstrap-4 表单在提交后删除验证

问题描述

提交后我无法删除验证,它也在成功消息后显示验证。

我尝试在成功提交所有输入字段并删除后提交,但验证保持不变,它显示每个输入字段的验证图标。

$('#formid').on('submit', function(e) {

  // if the validator does not prevent form submit
  if (!e.isDefaultPrevented()) {
    var url = "process.php";

    // POST values in the background the the script URL
    $.ajax({
      type: "POST",
      url: url,
      data: $(this).serialize(),
      success: function(data) {
        var messageAlert = 'alert-' + data.type;
        var messageText = data.message;
        // let's compose Bootstrap alert box HTML
        var alertBox = '<div class="alert ' + messageAlert + 'alert-dismissable"><button type="button" class="close" data-dismiss="alert" aria-hidden="true">&times;</button>' + messageText + '</div>';
        if (messageAlert && messageText) {

          $('#formid').find('.messages').html(alertBox);
          $('#formid').resetForm();
          $('#formid')[0].reset();

        }
      }
    });
    return false;
  }
});

标签: phpjqueryajaxhtmlbootstrap-4

解决方案


从 中删除.was-validated<form>将隐藏验证。

https://getbootstrap.com/docs/4.0/components/forms/#validation

Bootstrap 将:invalid:valid样式限定为父.was-validated类,通常应用于<form>. 否则,任何没有值的必填字段在页面加载时显示为无效。这样,您可以选择何时激活它们(通常在尝试提交表单之后)。


推荐阅读