Javascript 如果三个单选按钮都为false,则不验证

Javascript 如果三个单选按钮都为false,则不验证,javascript,jquery,html,jquery-validate,Javascript,Jquery,Html,Jquery Validate,我有三个不同的代码块,带有单选按钮 唯一需要更改的是id和它们的名称 我需要的是:如果所有单选按钮都选中value=false,那么用户选择选中所有no,那么表单将无效 我目前正在使用jQuery验证,我要做的就是单选按钮都是必需的 我试过使用这个代码,但不起作用 registerForm.validate{ 规则:{ “数据”:{ 所需:{ 取决于:功能{ 返回$'.yesandno'.is':选中'.val==false; } } }; 对 不 您可以使用过滤器并检查长度: //此筛选器将

我有三个不同的代码块,带有单选按钮

唯一需要更改的是id和它们的名称

我需要的是:如果所有单选按钮都选中value=false,那么用户选择选中所有no,那么表单将无效

我目前正在使用jQuery验证,我要做的就是单选按钮都是必需的

我试过使用这个代码,但不起作用

registerForm.validate{ 规则:{ “数据”:{ 所需:{ 取决于:功能{ 返回$'.yesandno'.is':选中'.val==false; } } }; 对 不
您可以使用过滤器并检查长度:

//此筛选器将仅返回已检查且值为false的收音机 $'.yesandno.filterfunction{ 返回this.checked&&this.value===false; }.长度===3;
您可以检查至少一个true值以通过验证,而不是检查所有三个单选按钮是否为false以失败验证。这将有助于缩放HTML单选选项,而无需反复更改JQuery代码以匹配false选项选择的长度

function passValidation(){
    $('.yesandno').filter(function() {
       return this.checked && this.value === "true";
    }).length > 0;
}
在验证过程中调用passValidation函数,如果返回true,则至少有一个单选按钮选择了Yes选项。passValidation中的false表示未选择Yes选项。

使用jQuery选择器,您可以完成此操作

看看这个代码片段

$“按钮”。单击=>{ 如果$'.yesandno:选中[value=false]'.size==3{ 控制台。记录“所有无线电按钮均检查为否”; }否则{ console.log“至少有一个Radionbutto为YES或一个YES/NO RadioButto未被选中!”; } }; 对 不 对 不 对 不
单击以查看所选值!它不起作用-错误是什么?您有语法错误,所以我会仔细查看您的代码…我编写了整个页面的一小部分,我只想知道jQuery验证中是否有方法,或者我如何用其他方法做到这一点:非常感谢!我成功地使它工作起来h您的代码。我必须对其进行一些更改,因为我使用的是jQuery验证插件:submitHandler:functionform{$'btn-register'。单击=>{if$'.yesandno:checked[value=false]'。大小===3{return false;}否则{form.submit;}};},
$('.yesandno:checked[value="false"]').size() === 3