#javascript #jquery
#javascript #jquery
Вопрос:
Я пытаюсь проверить свою форму перед отправкой с помощью jQuery validator, но проблема в том, что форма не проверяется, если я не нажму отправить один раз (с требуемой длиной), а затем она начнет проверку. Он не проверяет, даже если я нажимаю «Отправить», не заполняя входные данные минимальной длиной, он также не проверяет. вот мой html:
<form class="newRegister-formBox basketForm" id="confirmPhoneNumberForm" autocomplete="off">
<input autocomplete="off" type="text" name="code" id="code" class="form-control persianDigitInput" placeholder="">
<div class="newRegister-button">
<button type="button" id="send-confirm-phone-number-code" class="animateBtn greenAnimateBtn" >
<i class="fa fa-check"></i>
confirm
</button>
</div>
</form>
вот мой JS-код, и я использую Backbone JS. Я определил событие onclick кнопки для вызова этой функции:
sendConfirmPhoneNumberCode: function() {
var self = this;
var $form = $("#confirmPhoneNumberForm");
$("<input />").attr("type", "hidden")
.attr("name", "PhoneNumber")
.attr("value", $("input[name='PhoneNumber']").val())
.appendTo($form);
$("#confirmPhoneNumberForm").validate({
rules: {
code: {
required: true,
minlength: 4
}
},
messages: {
code: {
required: $utils.messages.user.required_ConfirmPhoneNumberCode,
minlength: $utils.messages.user.minlength_ConfirmPhoneNumberCode
}
}
});
Ответ №1:
$("#confirmPhoneNumberForm").validate
включает проверку при ее вызове. Вместо того, чтобы вызывать его в обработчике click
событий, вызовите его в начале.
Комментарии:
1. Если это решило вашу проблему, пожалуйста, нажмите галочку под кнопками голосования, чтобы принять ее.