我在我的网站上的表单上使用jQuery Validator。它运行正常,但每次击键都会导致错误:
Uncaught TypeError: Object #<error> has no method 'call'
我正在通过每个字段的类实现验证以及所有正常工作 - 必填字段,电子邮件字段,数字等。这是我的验证码:
if(jQuery().validate) {
//assign to global var for manual validation
validator = $(".validated").validate({
errorClass: "help-inline text-error",
errorElement: "span",
invalidHandler: function(e, validator) {
var errors = validator.numberOfInvalids();
if (errors) {
var message = errors == 1
? 'Please fix the indicated field before saving this form.'
: 'Please fix the errors on the indicated fields before saving this form.';
$(".validation-message").text(message);
$(".validation-message").addClass('alert alert-error');
} else {
$(".validation-message").removeClass('alert alert-error').text("");
}
},
onkeyup: true,
submitHandler: function(form) {
$(".validation-message").removeClass('alert alert-error').text("");
form.submit();
},
errorPlacement: function(error, element) {
if(element.parent().hasClass('input-append')){
error.insertAfter( element.parent() );
}else{
error.insertAfter(element);
}
}
});
}
任何人都可以在不影响功能的情况下看到会触发该错误的内容吗?
干杯!
答案 0 :(得分:9)
true
选项没有onkeyup
值。
默认情况下,在keyup
事件期间启用字段验证。您只需要在两种情况下使用此选项
keyup
事件期间停用验证,请设置onkeyup: false
keyup
在您的情况下,您只需删除选项onkeyup
。