如何在Javascript中清除单选按钮?

时间:2010-03-31 15:13:15

标签: javascript html

我有一个名为“选择”的单选按钮,选项是和否。如果我选择任何一个选项并单击标有“清除”的按钮,我需要使用javascript清除所选选项。我怎么能做到这一点?

10 个答案:

答案 0 :(得分:97)

您不需要为元素添加唯一的id,您可以通过name属性访问它们:

如果您使用的是name="Choose",那么:

  • 使用jQuery,它就像:

    一样简单
    $('input[name=Choose]').attr('checked',false);
    
  • 或纯JavaScript:

       var ele = document.getElementsByName("Choose");
       for(var i=0;i<ele.length;i++)
          ele[i].checked = false;
    

    Demo for JavaScript

答案 1 :(得分:10)

这应该有效。确保每个按钮都有唯一的ID。 (将Choose_Yes和Choose_No替换为两个单选按钮的ID)

document.getElementById("Choose_Yes").checked = false;
document.getElementById("Choose_No").checked = false;

应如何命名单选按钮的示例:

<input type="radio" name="Choose" id="Choose_Yes" value="1" /> Yes
<input type="radio" name="Choose" id="Choose_No" value="2" /> No

答案 2 :(得分:5)

如果您不打算使用jQuery,可以使用像这样的简单javascript

document.querySelector('input[name="Choose"]:checked').checked = false;

只有这样做才有好处,你不必为两个单选按钮使用循环

答案 3 :(得分:3)

不是更好的选择只是添加第三个按钮(“既不”),它会产生与未选择的结果相同的结果?

答案 4 :(得分:1)

清除一组单选按钮的ES6方法:

    Array.from( document.querySelectorAll('input[name="group-name"]:checked'), input => input.checked = false );

答案 5 :(得分:0)

简单,不需要jQuery:

<a href="javascript:clearChecks('group1')">clear</a>

<script type="text/javascript">
function clearChecks(radioName) {
    var radio = document.form1[radioName]
    for(x=0;x<radio.length;x++) {
        document.form1[radioName][x].checked = false
    }
}

</script>

答案 6 :(得分:0)

如果单选按钮的id是“男性”和“女性”,则可以使用jquery

重置值重置
$('input[id=male]').attr('checked',false);
$('input[id=female]').attr('checked',false);

答案 7 :(得分:0)

如果您有一个具有相同ID的单选按钮,则可以清除选择

单选按钮定义:

<input type="radio" name="paymentType" id="paymentType" value="CASH" /> CASH
<input type="radio" name="paymentType" id="paymentType" value="CHEQUE" /> CHEQUE
<input type="radio" name="paymentType" id="paymentType" value="DD" /> DD

清除单选按钮的所有值:

document.formName.paymentType[0].checked = false;
document.formName.paymentType[1].checked = false;
document.formName.paymentType[2].checked = false;
...

答案 8 :(得分:0)

就我而言,这完成了工作:

const chbx = document.getElementsByName("input_name");

for(let i=0; i < chbx.length; i++) {
    chbx[i].checked = false;
}

答案 9 :(得分:-1)

YES<input type="radio" name="group1" id="sal" value="YES" >

NO<input type="radio" name="group1" id="sal1" value="NO" >

<input type="button" onclick="document.getElementById('sal').checked=false;document.getElementById('sal1').checked=false">