jQuery Validation插件自定义方法。多个参数

时间:2009-09-02 10:13:35

标签: jquery jquery-validate

我正在尝试使用带有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" }
            }
        });
});

2 个答案:

答案 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" } });