1

我想要做的是添加一个新的验证方法,如果勾选了一个单选按钮,它将验证 2 个字段是否不相等(见这里 - http://jsfiddle.net/dazziep/uVnQ4/9/

我的代码有效,但我不得不通过在我宁愿通过它的实际方法中添加字段来稍微捏造它。

所以此刻我有...

jQuery.validator.addMethod("test", function(value, element, param){
   // check if dependency is met
   if (!this.depend(param, element)) return "dependency-mismatch";
   return value != $("#ImEqDepEq").val();
   },
   jQuery.format("Should not match Equality value.")
);`

我显然只是希望 ($("#ImEqDepEq").val()) 成为我传入的另一个参数。

我希望这有某种意义,我在解释事情时很垃圾:(

干杯

达兹

4

1 回答 1

3

param您可以使用选项将附加信息传递给规则。

$("form").validate({
    rules: {
        ImEqDep: {
            test: {
                depends: function () {
                    return $("#ImEqDepRad1Yes").is(':checked');
                },
                param: '#ImEqDepEq'
            }
        }
    }
});

jQuery.validator.addMethod("test", function (value, element, param) {
    // check if dependency is met
    if (!this.depend(param, element)) return "dependency-mismatch";
    return value != $(param).val();
}, jQuery.format("Should not match Equality value."));

演示:小提琴

于 2013-03-11T10:32:21.950 回答