尝试添加新的jquery验证器方法

时间:2011-09-15 09:23:48

标签: javascript jquery jquery-validate

我正在尝试添加一个类似于:

的验证器规则
  

当我们对一个元素应用此规则时,它应该只被验证   关于我们通过params的元素的非空值。   意味着,当且仅当其中一个通过时,它必须验证自己   元素具有非空值。

我正在尝试的规则:

jQuery.validator.addMethod("reqAfter",function(a,b,c){
    for(var i in c){
        var $d=$(c[i]);
        return !($d.length&&$d.val()!==""&&a=="");
    }
},"Please provide some value!");

像:

rules: {
    sField: { reqAfter: ['#startD', '#endD'] },
    startD: { regex: /^(\d{4,4})-(\d{2,2})-(\d{2,2})$/, reqAfter: ['#sField'] },
    endD: { regex: /^(\d{4,4})-(\d{2,2})-(\d{2,2})$/, reqAfter: ['#sField', '#startD'] }
}

表格:

enter image description here

1 个答案:

答案 0 :(得分:0)

我自己排序。

工作验证方法是:

jQuery.validator.addMethod("reqAfter", function (e, b, a) {
    if (!a || a.length < 1) return !0;
    else {
        var b = !1,
            c;
        for (c in a) {
            var d = $(a[c]);
            if (d.length && d.val() !== "") {
                b = e === "" ? !0 : !1;
                break
            }
        }
        return !b
    }
}, "Please provide some value!");

感谢我......