Я использую обратный вызов валидатора начальной загрузки для проверки поля.Я также хочу запустить загрузчик валидатора только по нажатию кнопки.Поэтому я связываю кнопку с валидатором начальной загрузки, используя
$(document).ready(function () {
$('#mybtn').click(function () {
$('#formId').bootstrapValidator('validate');
});
});
Но проблема в том, что валидатор срабатывает только в первый раз, а затем, если проверка ложна, он показывает сообщения об ошибках, а затем, если не срабатываетснова с этим нажатием кнопки.И если true, то соответствующий функционал работает.
вот мой 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, то валидатор срабатывает при нажатии клавиши этого конкретного поля, но все работает нормально.Первоначально я думал, что это освобождает мое событие щелчка.но я был неправ.Это фактически запускает валидатор начальной загрузки, но проверка не работает.