web-dev-qa-db-ja.com

jQuery検証プラグインのカスタムメソッド。複数のパラメータ

JQueryValidationプラグインでカスタムバリデーターを使用しようとしています。しかし、検証メソッドに複数の引数をどのように渡すのかわかりませんか? (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" }
            }
        });
});
28
BuzzBubba

Javascript配列:

[value1,value2,value3]

したがって、コードは次のようになります。

inputEl: { required: true, math: [2, 3 ,4 , 5] }
41
jantimon

また、通常のJavaScriptオブジェクトをパラメーターとして渡すこともできます。これは、個人的に操作しやすいと思います。

jQuery.validator.addMethod("myRule", function (value, element, options) {
    return value === options.data;
}, "My Rule says no!");

$("#input").rules("add", { myRule: { data: "foo" } });
21
Ben Foster