jquery选择单选按钮使用显示样式和选中状态

jquery选择单选按钮使用显示样式和选中状态,jquery,radiobuttonlist,Jquery,Radiobuttonlist,下面,javascript函数test2将显示当您单击Test按钮时,div1 div中四组单选按钮中的每一组是否都有选择。但如果其中一个组的显示样式为“无”,则会失败,因为我无法从该组中进行选择。如何添加按钮必须可见,即显示样式是内联的或可见性样式是可见的 <script type="text/javascript"> function testit2() { var radioscomplete = true; $('input:radio', $('#div1'

下面,javascript函数test2将显示当您单击Test按钮时,div1 div中四组单选按钮中的每一组是否都有选择。但如果其中一个组的显示样式为“无”,则会失败,因为我无法从该组中进行选择。如何添加按钮必须可见,即显示样式是内联的或可见性样式是可见的

<script type="text/javascript">
function testit2()
{
    var radioscomplete = true;
    $('input:radio', $('#div1')).each
    (
        function()
        {
            name = $(this).attr('name');
            if(! $('input:radio[name="' + name + '"]:checked').length)
            {
                alert('Oops, you missed some input there.. [' + name + ']');
                radioscomplete = false;
                return false;
            }
        }
    );
    if (radioscomplete)
        alert("All checked");
}


</script>
</head>
<body>
<div id="div1">
<input type="radio" name="xyz">test1<br />
<input type="radio" name="xyz">test4<br />
<input type="radio" name="xyz1">1test1<br />
<input type="radio" name="xyz1">1test4<br />
<input type="radio" name="xyz2">2test1<br />
<input type="radio" name="xyz2">2test4<br />
<span style="display:inline;"><input type="radio" name="xyz3">3test4<br /></span>

<br>
<button onclick="testit2();">Test</button>
</div>
你是说

$('input:radio:visible')
?

或使用

.filter(':visible:checked')

你怎么发音?你的第一个建议奏效了,但有一点需要注意。为了测试您的解决方案,我将xyz3控件上的display:inline更改为display:none,它成功了。非常感谢。我不能得票,因为我没有这个名声!但如果我让它可见:隐藏而不是显示:无,它就不起作用。还有,如果我成功的话!$'输入:radio[name='+name+']:checked:visible'.我认为您的第二个建议是长度,并保持显示而不是可见样式,它也不起作用。但是你给了我一个解决方案,我非常感激。哦,我的评论中有两个错误。首先,我的意思是不起作用的样式是可见性,而不是可见性。另外,我的意思是可见:选中不选中:可见,但我认为这没有任何区别。无论如何,这两种方法都不起作用。为什么第一个建议有效而第二个没有?还有,是否有一种jquery方法可以匹配可见性我很确定,在检查它们的状态之前,首先需要获得可见的