如何用jQuery选择嵌套单选按钮?

时间:2012-06-04 12:16:38

标签: jquery

我有以下代码:

<form class="form-inline" id="myform0">    
    <fieldset>                  
        <label class="radio"><input type="radio" name="optionsRadios" id="optionHere2" value="2">Yes</label>
        <label class="radio"><input type="radio" name="optionsRadios" id="optionHere1" value="1">No</label>            
        <label class="radio"><input type="radio" name="optionsRadios" id="optionHere3" value="3">Not decided</label>                        
    </fieldset>                 
</form>
<form class="form-inline" id="myform1">    
    <fieldset>                  
        <label class="radio"><input type="radio" name="optionsRadios" id="optionHere2" value="2">Yes</label>
        <label class="radio"><input type="radio" name="optionsRadios" id="optionHere1" value="1">No</label>            
        <label class="radio"><input type="radio" name="optionsRadios" id="optionHere3" value="3">Not decided</label>                        
    </fieldset>                 
</form>

我想要做的是能够以编程方式选择每组中的单选按钮。到目前为止我尝试过的所有东西都没用。想法?

编辑:

选择所有这些:     $(&#34;输入[name = optionsRadios] [value = 1]&#34;)。attr(&#39;已检查&#39;,&#39;已检查&#39;);

我只是想选择一个特定的。

1 个答案:

答案 0 :(得分:4)

要检查每个第一个单选按钮,请使用以下代码:

$("form").each(function() {
    $(this).find(":radio:first").prop("checked", true);
});

或更短:

$("form").find(":radio:first").prop("checked", true);​​​​​​​​​​​​​​​​

同时检查您是否拥有相同ID的元素(例如optionHere1optionHere2等)。

ID应该是唯一的!

DEMO: http://jsfiddle.net/mAeTa/


更新。这也可以正常使用:

$("form").find(":radio[name='optionsRadios'][value='1']").prop("checked", true);​

DEMO: http://jsfiddle.net/mAeTa/1/