мой HTML-код:
<select class="validateCardNotExpired" id="order_credit_card_expiration_month">
<option value="1">Jan</option>
<option value="2">Feb</option>
..........
</select>
<select class="validateCardNotExpired" id="order_credit_card_expiration_year">
<option value="2012">2012</option>
<option value="2013">2013</option>
......
</select>
Код Javascript:
$(document).ready(function() {
jQuery.validator.addMethod("validateCardNotExpired", function(value, element, params){
alert("validate exp");
.........
}, 'Your card has expired.');
$("#order_form").validate({
tried also:
jQuery.validator.setDefaults({
rules: {
order_credit_card_expiration_month: {
validateCardNotExpired: {
month: '#order_credit_card_expiration_month',
year: '#order_credit_card_expiration_year'
}
},
order_credit_card_expiration_year: {
validateCardNotExpired: {
month: '#order_credit_card_expiration_month',
year: '#order_credit_card_expiration_year'
}
}
}
});
}
Проблема:
когда я использую (как рекомендуется в каждом примере) обработчик с тремя параметрами:
function(value, element, params)
предупреждение не отображается (кажется, что механизм проверки JQ встречает какое-то исключение, кстати, как его перехватить в этом случае?)
при удалении третьего параметра:
function(value, element)
появляется предупреждение.
И похоже, что "правила" в любом случае игнорируются.
Что может быть не так?