jQuery validate – 用户必须选择YES radio(不是no)以便conitnue

我想设置一个jQueryvalidation规则,要求检查YES(不是否),以便表单validation/提交。 用户必须接受条款。 如果用户选择“否”,则会收到错误消息,并且表单将不会生效。 使用jquery validate插件实现此目的的正确方法是什么?

Yes No
$("#myForm").validate({ /* Insert your awesome jquery validation code here. Free beer to whoever answers the question! */ });

这是一个工作示例: http : //jsfiddle.net/ThcS8/1/

对任何可以提供解决方案甚至更好的例子的人都感到荣幸! 如果您正在寻找相同的解决方案,请投票,以获得关注。 谢谢大家!

请投票给你最喜欢的解决方案!

我也有这个问题,并尝试了各种各样的事情,包括上面提到的解决方案。 最后,我编写了一个自定义validation器方法来检查单选按钮中的所需值:

 jQuery.validator.addMethod("requiredRadioValue", function(value, element, params) { var selectedValue = $('input:radio[name=' + element.name + ']:checked').val(); return (typeof(params) == 'array') ? (params.indexOf(selectedValue) != -1) : selectedValue == params; }, "You must select the required option."); 

该方法用于例如

 signedcif: { requiredRadioValue: 'yes' } 

允许的选项可以是数组或单个值。

希望这会有所帮助,我希望这不是最直接的方式,所以任何替代方案都会感激不尽!

你应该从无输入无线电中删除所需的,然后简单地做

 $("form").validate(); 

这初始化了jqueryvalidation。 它会看到是必须被选中,并且不会让表单提交直到它。

将值从true和false分别更改为1和0。 并添加规则

 $('form').validate({ rules:{ terms: {min:1} }, messages:{ terms: {min:'you must accept terms to move on.'} } }); 

假设复选框具有“必需”类并且名称为“agreeForm”,则可以使用以下内容:

  jQuery("#regForm").validate({ debug: true, rules: { agreeForm: "required", }, messages: { agreeForm: "Please accept our Terms and Conditions.", } });