jQuery检查BootstrapValidator是否通过

时间:2018-03-10 09:40:29

标签: javascript jquery validation

我希望Laravel的登录页面显示一个旋转的圆圈,并在按下“登录”按钮后显示“您正在登录”的消息。好的,到目前为止,我需要先验证bootstrap验证器是否通过了所有输入。这是我的JS:

$("#loginSubmit").click(function() { $("#button_login_content").replaceWith("You're being logged in &nbsp;<i class=\"fas fa-spinner fa-spin\"></i>"); $("#loginSubmit").prop("disabled", true); $("#authentication").submit(); });

loginSubmit是提交按钮的ID。 button_login_content是按钮内的div,然后由$("#button_login_content").replaceWith("You're being logged in &nbsp;<i class=\"fas fa-spinner fa-spin\"></i>");更改。 authentication是表单的名称。到目前为止,它做了我想要的。但是,输入任何内容或无效数据并点击提交会导致输入字段下方显示红色警告(这也是我想要的),但不会阻止按钮更改其内容等等。这就是为什么我认为我需要检查这样的东西[伪代码]:

if(!bootstrapValidator.checked()) return;

在实际运行其余$("#loginSubmit").click()之前。我实际上是谷歌搜索,没有找到任何东西。我尝试了各种各样的东西,比如上面的代码。有没有办法检查这个?这是我的验证器:

$("#authentication").bootstrapValidator({
        fields: {
            username: {
                validators: {
                    notEmpty: {
                        message: 'The email address is required'
                    },
                    regexp: {
                        regexp: /^\S+@\S{1,}\.\S{1,}$/,
                        message: 'Please enter valid email format'
                    }
                }
            },
            password: {
                validators: {
                    notEmpty: {
                        message: 'Password is required'
                    }

                }
            }

        }
    });

1 个答案:

答案 0 :(得分:0)

这是解决方案:

var validator = $("#authentication").data("bootstrapValidator"); validator.validate(); if(!validator.isValid()) { return; }