Javascript 至少一组无线电组的验证

Javascript 至少一组无线电组的验证,javascript,jquery,Javascript,Jquery,我有两组单选按钮 <input type="radio" name="rb1" value="a"> <input type="radio" name="rb1" value="b"> <input type="radio" name="rb1" value="c"> <input type="radio" name="rb2" value="e"> <input type="radio" name="rb2" value="f">

我有两组单选按钮

<input type="radio" name="rb1" value="a">
<input type="radio" name="rb1" value="b">
<input type="radio" name="rb1" value="c">


<input type="radio" name="rb2" value="e">
<input type="radio" name="rb2" value="f">
<input type="radio" name="rb2" value="g">

现在,用户: 1.必须从任一无线电组中选择至少一个值 2.可以从两个组中各选择一个值


我需要使用javascript进行验证。我可以验证一个组或两个组,但如何同时检查这两个组?

您想这样做

$('#btnValidate').click(function() {
    var v1 = $('input:radio[name="rb1"]:checked').val();
    var v2 = $('input:radio[name="rb2"]:checked').val();

    if (!v1 && !v2 ) {
        alert('not valid');
    } else {
        alert('valid');
    }
});
在这里工作


它必须是单选按钮吗?缺点是,一旦你从组中选择了一个单选按钮,你就不能再选择“无”。(标准单选按钮行为)。根据您的描述,对于一个组或另一个组,似乎没有一个是有效的选项。确切地说,我们有两个不同的组。但我仍然需要检查是否至少选择了一个,它可以来自组rb1或rb2,也可以来自每个组的一个收音机。有道理吗?很好,谢谢。现在我无法在页面/警报上显示对话框,是否可以显示此错误,提交表单后(标记为红色?)确定。我只是以警报为例。这里有一个更新的JSFIDLE,它将它抛出到一个div中。。。不过有一个问题,在我选中单选按钮后,验证错误不会消失,而且如果我刷新页面,readio按钮将保持选中状态。我们可以将其设置为条件必需吗?如果希望错误在有效时消失,只需将.html('valid')设置为.html('')。如果希望单选按钮更改时启动验证,请使用此事件$('input:radio').change(function(){validation logic here.});