Я думал, что только что совершил ошибку в своих правилах, но эта ошибка меня озадачила!JQuery.Validate -> TypeError: 'undefined' не является функцией
TypeError: 'undefined' is not a function (evaluating 'validator.settings["on"+event.type].call(validator,this[0])')
я написал отдельное пользовательское правило ниже первого, который использует jquery.payment библиотеки для проверки количества CC. Кажется, это jquery.validate.min, который бросает ошибку, хотя! Любая идея?
Вот мои правила:
jQuery.validator.addMethod("jqPaymentCreditCard",
function(value, element) {
return this.optional(element) ||
$.payment.validateCardNumber(value);
},
" Invalid credit card number.");
$("#SSLForm").validate(
{
onkeyup: true,
errorClass: "is-invalid",
errorPlacement: function(error, element) {
if (element.attr("name") == "KKMonth") {
error.insertAfter("#KKYear");
} else {
error.insertAfter(element);
}
},
rules: {
CreditCardHolder: { required: true },
KKnr: { required: true , jqPaymentCreditCard: true},
KKMonth: { required: true },
KKYear: { required: true },
CCCVC: { required: true, digits: true, minlength: 3, maxlength: 4 }
},
messages: {
CreditCardHolder: { required: $("#CreditCardHolderRequiredHdn").val() },
KKnr: { required: $("#KKnrRequiredHdn").val(), jqPaymentCreditCard: $("#KKnrRequiredHdn").val() },
KKMonth: { required: $("#KKMonthRequiredHdn").val() },
KKYear: { required: $("#KKYearRequiredHdn").val() },
CCCVC: { required: $("#CCCVCRequiredHdn").val(), digits: $("#CCCVCDigitsHdn").val(), minlength: $("#CCCVCDigitsHdn").val(), maxlength: $("#CCCVCDigitsHdn").val() }
},
tooltip_options: {
CreditCardHolder: {placement: 'right' },
KKnr: { placement: 'right' },
KKMonth: { placement: 'right' },
KKYear: { placement: 'right' },
CCCVC: { placement: 'right' }
}
});
Спасибо Sparky !! Первое, что я думаю, это причина, по которой я собираюсь попробовать это сейчас. Второй отдельный плагин jquery.validate.bootstrap.tooltip для отображения всплывающих подсказок в качестве сообщений об ошибках, поэтому я не думаю, что это вызывает какие-либо проблемы, поскольку они работают. – user1957687
@ user1957687, если всплывающие подсказки работают, это НЕ НЕ, потому что вы помещаете 'tooltip_options' внутри' .validate() '. Этот параметр абсолютно ** бессмысленен ** в этом контексте. – Sparky
спасибо! этот первый ответ, который вы дали исправил! – user1957687