我正在尝试使用带有jQuery Validation插件的自定义验证器。 但是,我不确定你应该如何将多个参数传递给验证方法? 我尝试过使用(2,3)花括号和组合,但我失败了。
这是代码 - ????标志着我需要的信息:
$(document).ready(function() {
jQuery.validator.addMethod("math", function(value, element, params) {
return this.optional(element) || value == params[0] + params[1];
}, jQuery.format("Please enter the correct value for {0} + {1}"));
$("#form_register").validate({
debug: true,
rules: {
inputEl: { required: true, math: ???? }
},
messages: {
inputEl: { required: "Required", math: "Incorrect result" }
}
});
});
答案 0 :(得分:41)
Javascript数组:
[value1,value2,value3]
所以您的代码可能是:
inputEl: { required: true, math: [2, 3 ,4 , 5] }
答案 1 :(得分:21)
您还可以将普通的JavaScript对象作为参数传递,我个人觉得这个参数更容易使用:
jQuery.validator.addMethod("myRule", function (value, element, options) {
return value === options.data;
}, "My Rule says no!");
$("#input").rules("add", { myRule: { data: "foo" } });