2013-01-31 26 views
0

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

<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'> 

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

我正在使用onclick顶部的单选按钮来触发一个javascript函数,但我不知道该怎么告诉该函数。我假设jquery能够很好地做到这一点,但似乎无法拿出代码来做到这一点。

+0

您是否只需要这三个收音机箱,或者您想在网页上选择_ALL_复选框? –

+0

在页面顶部我有三个“控制器”无线电盒。如果我选择控制器组中的“批准”无线电,我希望所有的无线电都被检查,拒绝和审查也是一样的。 – Refrax

+0

请记住,ID必须是唯一的。例如,如果您的页面上有多个单选按钮,并且id =“denied”,您将遇到问题。 –

回答

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/

+0

这个伎俩!非常感谢你的帮助,我想我甚至可能学到了一些东西! :P – Refrax

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,检查其中的所有单选按钮。合理?

+0

或者像上面那样,你可以使用jQuery或者SIZZLE来获得更好的选择器能力:) –

相关问题