我想为JQuery Validation Engine编写新的验证规则。你似乎所要做的就是编写一个这样的函数:
"myNewRule":
"func": function(field, rules, i, options){
//new validation function
},
"alertText": "message to be displayed if something goes wrong"
},
现在,有谁知道如何访问字段ID(或名称)或如何传递参数?我需要验证字段B的值不小于字段A,因此知道我应该将哪个字段与...进行比较非常重要。
答案 0 :(得分:10)
好的,我明白了。
field.val()
获取字段值。i+1
为您提供规则开始的 rules 数组中的位置,如果您有参数,它可能非常有用。我需要验证某个字段的值是否大于另一个字段,因此我执行了以下操作:
的javascript:
function geThan(field, rules, i, options){
var a=rules[i+2];
if(parseFloat(field.val()) < parseFloat( jQuery("#"+a).val() ) ){
return "Value is smaller than a, and should be greater than or equal to it."
}
}
和html是:
<input type="text" id="porce_1" name="porce_1" data-validation-engine="validate[required,custom[number],min[0],max[100]]">
<input type="text" id="porce_2" name="porce_2" data-validation-engine="validate[required,custom[number],min[0],max[100],funcCall[geThan[porce_1]]]">
我没有将我的代码放在插件中,正如我最初想的那样,但是在我的页面的head部分中,使用了funcCall
代替。