【发布时间】:2019-04-20 12:01:18
【问题描述】:
我正在使用引导验证器回调来验证字段。我还想仅在单击按钮时触发引导验证器。所以我使用
将按钮与引导验证器绑定$(document).ready(function () {
$('#mybtn').click(function () {
$('#formId').bootstrapValidator('validate');
});
});
但问题是验证器仅在第一次触发,然后如果验证为假,它会显示错误消息,然后如果没有通过单击该按钮再次触发。如果为真,则相应的功能正常工作。
这是我的html
<form id="formId">
<input type="text" name="Iname" data-bv-trigger='null'/>
</form>
这是我的验证器
$('#formId').bootstrapValidator({
fields: {
Iname: {
validators: {
callback: {
callback: function (value, validator, $field) {
if(!isValidData(value)) {
return {
valid: false,
message: "invalid message"
};
}
else {
return { valid: true };
}
}
}
}
}
}
}).on('success.form.bv', function (e) {
e.preventDefault();
//Do corresponding operation
});
我只想在按钮单击时触发 bootstrapValidator。如果我省略 data-bv-trigger 属性,验证器会在该特定字段的按键上触发,但一切正常。 最初我认为它解除了我的点击事件。但是我错了。它实际上会触发引导验证器,但验证不起作用。
【问题讨论】:
-
我已经使用了你的代码。我收到了这个引用错误。$element is not defined
-
在名为“元素”的变量中设置字段的引用或直接发送它来代替
$(element)