У меня есть следующий код проверки ...
jQuery('#MyForm').validate({
ignore: ".ignore",
rules: {
FirstName: {
required: function () { //this works
return (document.getElementById("FirstName").value === '');
}
},
LastName: {
required: true //this doesn't work
}
...
По какой-то причине, если я укажу правила, такие как «LastName» выше, это не сработает.Однако, если я добавлю функцию для явной проверки поля, например «FirstName», она сработает.
Может кто-нибудь предложить возможную причину этого?
Любой стиль отлично работает в других браузерах.
В некоторых других вопросах предлагалось добавить метатег «X-UA-Compatible», но в этом случае это не имеет значения.
После некоторого дальнейшего изучения я вижу, что в jquery происходит ошибка.validate.js, в этой строке ...
settings[ eventType ].call( validator, this, event );
в этом блоке кода ...
var validator = $.data( this.form, "validator" ),
eventType = "on" + event.type.replace( /^validate/, "" ),
settings = validator.settings;
if ( settings[ eventType ] && !$( this ).is( settings.ignore ) ) {
settings[ eventType ].call( validator, this, event );
}