Я пытаюсь выполнить условную проверку с помощью валидатора jQuery.
У меня есть мастер в javascript, который вызывает метод проверки при переходе к следующему шагу:
var validator = $("form").validate();
var anyError = false;
step.find("input").each(function () {
if (!validator.element(this)) {
// validate every input
anyError = true;
}
});
if (anyError) {
return false;
}
Все работает нормально, когда у меня есть атрибут [Required] в модели.
Однако у меня есть этот сценарий:
- У меня есть выпадающий список с выбором: электронная почта или FTP
- Когда выбран параметр «Электронная почта», я хочу показать поле адреса электронной почты и добавить проверку
- Когда выбрана опция Ftp, я не хочу проверять адрес электронной почты
Вот фрагмент html для адреса электронной почты.
<div class="email-address" style="display: none;">
<label class="fullwidth" for="EmailAddress">Email Address</label>
@Html.TextBoxFor(m => m.EmailAddress, new { @class = "longtext" })
<div id="email-validation">
</div>
I've tried all sorts but the next button validation routine always thinks the form is valid. For example.
$("form").validate({
errorLabelContainer: '#email-validation',
rules: {
EmailAddress: {
required: true
}
},
messages: {
EmailAddress: "Please enter an email address"
}
});
Любая помощь приветствуется.