MVC DataAnnotations ve jQuery göze batmayan javascript kütüphanesini kullanarak özel bir doğrulayıcı yazdım. Harika çalışıyor. Şu anda sahip olduğum tek sorun, ilk doğrulamadan sonra, kullanıcının alanı düzenlediyse, her tuş vuruşu üzerinde doğrulayıcıyı ateşlemektir. Doğrulayıcı, girişi doğrulamak için bir web servisine ulaştığından, kullanıcının alandan çıktığı veya formun gönderildiği zaman girişi her zaman doğrulamasını tercih ederim. Bu davranışı değiştirmenin bir yolu var mı? Benim kodum:Her bir tuşa basmadan özel validator'yu durdurma
<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>
Bu işe yaradı, teşekkürler! – Scott
Bunu yaptım ve hala her tuşa (veya backspace) validator yöntemini çağırıyor, ancak alandan çıkarken değil! Başka ne deneyebilirim? –