Javascript 如何一次选中一个复选框,并在单击其他复选框时将复选框切换为未选中?

Javascript 如何一次选中一个复选框,并在单击其他复选框时将复选框切换为未选中?,javascript,jquery,html,checkbox,Javascript,Jquery,Html,Checkbox,如何使复选框在单击一个复选框而不选中另一个复选框时单击。 单击复选框1时,应将其标记为选中;单击复选框2时,应将其标记为选中,其余所有应标记为未选中 我的代码如下: <div class="feedback-quest3"> <label class="checkbox ques3" for="ques3-cbox1"> <input type="checkbox" value="" id="ques3-cbox1" data-toggle=

如何使复选框在单击一个复选框而不选中另一个复选框时单击。 单击复选框1时,应将其标记为选中;单击复选框2时,应将其标记为选中,其余所有应标记为未选中

我的代码如下:

<div class="feedback-quest3">
    <label class="checkbox ques3" for="ques3-cbox1">
        <input type="checkbox" value="" id="ques3-cbox1" data-toggle="checkbox">
        1-2 
    </label>
    <label class="checkbox ques3" for="ques3-cbox2">
        <input type="checkbox" value="" id="ques3-cbox2" data-toggle="checkbox">
        2-3 
    </label>
    <label class="checkbox ques3" for="ques3-cbox3">
        <input type="checkbox" value="" id="ques3-cbox3" data-toggle="checkbox">
        3-4 
    </label>
</div>

1-2 
2-3 
3-4 
请参见

Javascript
函数附加(元素、侦听器、ev、tf){
if(元素附件)
元素。附件(“on”+侦听器,ev);
其他的
元素。addEventListener(侦听器、ev、tf);
}
var parent=document.getElementById('parentElement');
var复选框=parent.getElementsByTagName('input');
如果(复选框长度>0){
对于(var i=0;i,请尝试以下方法:

$(".feedback-quest3 :checkbox").each(function(){
  $(".feedback-quest3 :checkbox").on("change",function(){
     $(".feedback-quest3 :checkbox").prop("checked",false);
     $(this).prop("checked",true);
  });
});

为什么你不能使用单选按钮?这正是它们的设计目的。听起来你想要的是单选按钮,而不是复选框。是的,我知道,但在我的项目中,它们的需要仅意味着用户只能单击一个与单选按钮类似的复选框功能。作为用户,当我看到复选框时,你需要了解UX的含义我可以选择其中的一个或多个。你只需要一组互斥的复选框。你真正需要的是单选按钮(你可以随时更改它们的外观和感觉)。
$(".feedback-quest3 :checkbox").on("change", function(){
  $(".feedback-quest3 :checkbox").not($(this)).prop("checked",false);
});
$(".feedback-quest3 :checkbox").each(function(){
  $(".feedback-quest3 :checkbox").on("change",function(){
     $(".feedback-quest3 :checkbox").prop("checked",false);
     $(this).prop("checked",true);
  });
});