validation至少一个复选框

我已经看到其他一些post有同样的问题,但无法让解决方案为我工作,所以我发布了自己的问题。

让我先说一下我是JQuery和MVC的新手。 我有3个复选框,我需要确保至少检查其中一个。 我有一些使用Jquery自定义validation的工作。 但它在validation摘要中显示3条消息。 我希望它只显示一条消息,如果可能,不要在validation摘要中显示。 我怎么能实现这个目标?

HTML代码

  


JQuery的

 $.validator.addMethod("checkbox", function (value, element) { return $('.checkbox:checked').length > 0; }, 'At least one river must be selected.'); 

工作演示 http://jsfiddle.net/RGUTv/

更新 – 2015年1月12日=> http://jsfiddle.net/r24kcvz6/ CDN是cahnged http://ajax.aspnetcdn.com/ajax/jquery.validate/1.13.1/jquery.validate.js – 你可以复制通过去除所有复选框并单击submit按钮的行为。

 $.validator.addMethod('require-one', function(value) { return $('.require-one:checked').size() > 0; }, 'Please check at least one box.'); var checkboxes = $('.require-one'); var checkbox_names = $.map(checkboxes, function(e, i) { return $(e).attr("name") }).join(" "); $("#itemForm").validate({ groups: { checks: checkbox_names }, errorPlacement: function(error, element) { if (element.attr("type") == "checkbox") error.insertAfter(checkboxes.last()); else error.insertAfter(element); } }); 

HTML

 



图像,如果您取消勾选validation将触发

在此处输入图像描述