Javascript 使用jQuery选择/取消选择具有不同名称的单选按钮

Javascript 使用jQuery选择/取消选择具有不同名称的单选按钮,javascript,jquery,html,radio-button,Javascript,Jquery,Html,Radio Button,我有一个测验,使用数据库中答案的ID作为名称,以检查它们是否正确。所以基本上我不能让他们都叫同一个名字 <input type="radio" id="r21" value="21" name="radiobtns"> <label for="r21">21</label> 无论如何,这给我留下了单选按钮,可以全部检查,这不是它应该如何工作。我发现jQuery允许取消选中单选按钮,但我需要在单击其他按钮时取消选中它们 HTML: 因此,如果选中了21,我单击

我有一个测验,使用数据库中答案的ID作为名称,以检查它们是否正确。所以基本上我不能让他们都叫同一个名字

<input type="radio" id="r21" value="21" name="radiobtns">
<label for="r21">21</label>
无论如何,这给我留下了单选按钮,可以全部检查,这不是它应该如何工作。我发现jQuery允许取消选中单选按钮,但我需要在单击其他按钮时取消选中它们

HTML:


因此,如果选中了21,我单击了22,那么21应该取消选中

使用单选按钮的值传递id,并给它们所有相同的名称

<input type="radio" id="r21" value="21" name="radiobtns">
<label for="r21">21</label>

21

那么您就不需要jQuery了。

试试这段代码,除了单击的单选按钮外,所有单选按钮都将被取消选中。就像Aron P Johny所说的,如果你想将所有单选按钮与特定的问题和答案组合在一起,那么就用他的答案代替。
$(“输入[type='radio'])。单击(函数(事件){
$(“input[type='radio']”)prop('checked',false);
$(this.prop('checked',true);
});

答复21
答复22
答复23
答复24

如果您希望同一字段集中的无线电组像无线电组一样工作,那么您只需执行以下操作即可

 $("input[type='radio']").click(function (event) {
     $(this).addClass("checked");    
     $(this).siblings('input[type="radio"]').prop('checked', false).removeClass('checked')
 });

演示:

因此,如果选中21,我单击22,21应该取消选中
如果这是您想要的,您实际上不需要jQuery

<fieldset>
 <input type="radio" name="radio_button">
 <label for="21">Answer 21</label>
 <input type="radio" name="radio_button" class="checked">
 <label for="22">Answer 22</label>
 <input type="radio" name="radio_button" class="">
 <label for="23">Answer 23</label>
 <input type="radio" name="radio_button">
 <label for="24">Answer 24</label>
</fieldset>

答复21
答复22
答复23
答复24

只需确保它们的名称相同即可。

注意单选按钮的使用。。只有1个必须选中,另一个将不选中。。与复选框相比,您可以选中多个复选框。效果非常好。谢谢哦,看起来它取消了其他字段集中的其他问题。我们怎样才能使它适用于多个字段集?这也适用于字段集。正确答案的初始选择不适用于多个字段集。谢谢
<fieldset>
 <input type="radio" name="radio_button">
 <label for="21">Answer 21</label>
 <input type="radio" name="radio_button" class="checked">
 <label for="22">Answer 22</label>
 <input type="radio" name="radio_button" class="">
 <label for="23">Answer 23</label>
 <input type="radio" name="radio_button">
 <label for="24">Answer 24</label>
</fieldset>