需要使用javascript检查页面上的所有单选框

时间:2013-01-31 19:33:18

标签: javascript jquery

我需要使用javascript检查页面上具有特定ID的所有广播框。单选按钮都有不同的名称,按3分组,一个用于批准,一个用于拒绝,一个用于审核......

<input type=radio name='21' value='approved' id='approved' title='Approve'>
<input type=radio name='21' value='denied' id='denied' title='Deny'>
<input type=radio name='21' value='review' id='review' checked title='Do nothing right now'>

......等等。我在这个网站和谷歌上搜索过,并没有找到适合我的解决方案。我在页面顶部有另一组单选按钮,我想用来控制其他按钮,所以如果我点击顶部的“批准”无线电,选择所有批准的无线电,拒绝所有被拒绝的无线电盒子页面等。

我在顶部单选按钮上使用onclick来激活javascript函数,但我不知道该告诉该函数要做什么。我假设jquery可以很好地完成这项工作,但似乎无法提供代码来实现这一点。

2 个答案:

答案 0 :(得分:1)

在所有无线电上尝试点击功能,并根据其值更新选择。见下文,

//   v--- Refined the selector as you want this to happen only when clicking on the 
//        controller radio options.
$('.controller:radio').click(function () {
    $(':radio[value=' + this.value + ']')).prop('checked', true);
});

DEMO: http://jsfiddle.net/KvdNq/

答案 1 :(得分:0)

我要做的是实际在单独的DIVS中创建组。然后你可以循环遍历该特定div中的所有无线电,而不需要关心各个无线电按钮的IDS。

<div id="group1">
    <input type="checkbox" value="group1"/> Check all in this group
    <input type = "radio" value="xx" />
    <input type="radio" value="yy" />
</div>

现在你可以简单地创建一个获取复选框值的函数,然后遍历匹配的div,检查其中的所有RADIO BUTTONS。合理?