首页 > 解决方案 > Bootstrap Modal 在验证后不起作用,但警报有效

问题描述

我在引导程序 4 中有一个预览按钮。如果表单无效,我想显示验证错误,如果表单有效,我想显示一个模式窗口。

我有这个代码。

    $("#previewBtn").click(function(event) {
    //$("#exampleModal").modal("show");  //Works fine if I uncomment

    //Fetch form to apply custom Bootstrap validation
    var form = $("#order-form")
    //alert(form.prop('id')) //test to ensure calling form correctly

    if (form[0].checkValidity() === false) {
      event.preventDefault();
      event.stopPropagation();
    } else {
        //alert("Validated!");
        $("#exampleModal").modal("show");   
    }
    form.addClass('was-validated'); 
  }) //validation end

如果表单无效,我会收到验证错误。

如果我取消注释第二行以显示模式,我会得到模式窗口。

else但是,如果验证中没有错误,则模式窗口不起作用。

如果验证中没有错误,则alert(以上显示模式)正在工作。else

如果没有验证错误,如何显示模态窗口?

标签: javascriptjquerytwitter-bootstrapformsvalidation

解决方案


我会检查你的表单变量的值。如果它在位置 1 而不是在 else 中工作,那么它让我认为checkValidity()要么返回 true,要么 if 语句抛出异常。

也许在;你的var form行中添加一个


推荐阅读