覆盖已选中的单选按钮并检查其他按钮

时间:2013-12-18 13:27:22

标签: javascript jquery html forms radio-button

我有两个单选按钮。默认情况下会检查一个,但我想取消选中一个并默认检查另一个。

所以我有这个HTML:

<div class="gui-radio">
  <input type="radio" value="register" name="choise" id="new-register">
  <label for="register">Register</label>
</div>
<div class="gui-radio">
  <input type="radio" checked="checked" value="guest" name="choise" id="new-guest">
  <label for="new-guest">Guest</label>
 </div>

这一切都是自动生成的。我需要用Jquery完成这个。

那么如何取消选中第二个并检查第一个?

3 个答案:

答案 0 :(得分:2)

jQuery 1.6 +

您可以通过设置.prop('checked', true);来勾选复选框,并通过设置.prop('checked', false);取消选中。

$('#new-register').prop('checked', true);
$('#new-guest').prop('checked', false);

jQuery 1.5及以下

$('#new-register').attr('checked','checked');
$('#new-guest').removeAttr('checked');

答案 1 :(得分:1)

它们已经通过name属性连接,因此您需要做的就是检查第一个属性 - 第二个将自动取消选中,因为在一个广播组中只能选择一个。

这是你在jQuery中检查收音机/复选框的方法:

$('#new-register').prop('checked', true);

答案 2 :(得分:1)

这会检查第一台电台:

jQuery('input#new-register').prop('checked', true);

同时关闭输入可能是一个好主意:

<div class="gui-radio">
    <input type="radio" value="register" name="choise" id="new-register" />
    <label for="register">Register</label>
</div>
<div class="gui-radio">
    <input type="radio" checked="checked" value="guest" name="choise" id="new-guest" />
    <label for="new-guest">Guest</label>
</div>

jsfiddle link