我正在使用jQuery验证插件,我正在寻找添加一些自定义逻辑。我有一系列复选框,其中包含与之关联的子复选框。对于某些(不是全部)这些父复选框,我想要求检查其中一个子复选框。我没有问题硬编码因此我在我的DOM中添加了这样的字段:
<input type="hidden" id="child_required_1" class="child_required_1" />
然后添加这样的自定义验证器:
jQuery.validator.addMethod('child_required_1', function(val, element) {
if($('#product_responses_1').length > 0) {
if($('#product_responses_1').is(':checked')) {
var count = $("input:checkbox:checked[id^='children_tags_1_']").length;
if(count == 0) {
return false;
}
}
}
return true;
}, 'You must select at least one child.');
这完全没问题。但是当我复制所有这些并添加“_2”时,只有一个验证器似乎会触发。那么从我可以收集的信息来看,每个表单的自定义验证器都是唯一的如果是这样的话,我怎么处理这样的情况,我可能需要15-20个这些在不同的地方展示?我不想只显示一个错误。
我也可以创建一个类规则,但这并不能解决我创建多个错误标签并将它们放在相关位置的问题。
答案 0 :(得分:0)
显然在隐藏字段上使用它不起作用,但是当我删除隐藏字段并将该类应用于实际复选框本身时,它工作正常。不完全确定原因。