我已经在输入
类型文本上添加了自定义验证,并且我正在通过检查事件类型进行自定义验证:
$.validator.addMethod("customVal", function (value, element, options) {
if (event.type == "blur" || event.type == "focusout" || event.type ==
"keydown" || event.type == "click") {
//custom logic
}
}
此代码在 Chrome 中有效,但在 Firefox 上我收到错误:
Reference error for event object.
我尝试在参数列表中添加事件,如下所示:
函数(值、元素、选项、事件)
但这没有用。
最佳答案
$.validator.addMethod()
的方法中没有事件参数。您无法决定哪个事件将在方法本身内部调用该方法,因为到那时已经太晚了,该方法已经被调用了。您可以在 validate()
内执行此操作功能。
假设您的表单是 <form id="myForm">
,您可以禁用 onkeyup
上的验证像这样的事件:
$("#myForm").validate({
onkeyup: false,
//rules: {
//},
//messages: {
//}
});
关于javascript - jQuery 验证器的 addMethod 不支持 Firefox 中的事件对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/48860142/