jquery验证器:自定义条件规则

时间:2017-09-21 14:45:30

标签: jquery validation conditional

我有一个html选择,第一个选项值是""。我正在使用自定义规则验证它:

   $.validator.addMethod("requiredSelect", function (value, element, arg) {
      return arg != value;
   }, "Required field.");

然后做:

dropdownField: {
   requiredSelect: ""
},

现在我需要使它成为有条件的,所以只有在选中给定的复选框时才需要它。如果不使用自定义规则,我会做类似的事情:

dropdownField: {
   required:'#myCheckbox:checked'
},

但是如何让我的自定义验证器有条件?

1 个答案:

答案 0 :(得分:0)

只需在返回的表达式中添加OR运算符(||),这样您也可以检查复选框的checked状态:

$.validator.addMethod("requiredSelect", function (value, element, arg) {
  return !(arg !== value || $('#myCheckbox').is(':checked'));
}, "Required field.");

当一个或多个条件真实时,您的验证器将返回false,换句话说,如果未选中该复选框,您肯定会将该字段标记为有效。