Я написал собственный валидатор, используя MVC DataAnnotations и ненавязчивую библиотеку javascript jQuery.Работает отлично.Единственная проблема, с которой я столкнулся сейчас, заключается в том, что после первоначальной проверки, если пользователь редактирует поле, он запускает валидатор при каждом нажатии клавиши.Поскольку валидатор подключается к веб-службе для проверки ввода, я бы предпочел, чтобы он всегда просто проверял ввод, когда пользователь покидает поле или отправляет форму.Есть ли способ изменить это поведение?Вот мой код:
<script type="text/javascript">
$.validator.addMethod("validate_zipcode", function (value, element) {
if (value == null || value.length == 0) {
return true;
}
var isValid = false;
$.ajax({
async: false,
dataType: "json",
url: "/api/iszipvalid/" + value,
success: function (response) {
isValid = response;
}
});
return isValid;
});
$.validator.unobtrusive.adapters.addBool('zipcode', 'validate_zipcode');
</script>