如何检查复选框是否在 Javascript 中被选中

新手上路,请多包涵

我需要制作 5 个复选框,它们都有一个值,从 1 到 5,当我选中一个时,我需要在文本框中打印出值,我可以取消选中这些框,数字消失。我的问题在于取消选中部分,我似乎无法找到一种方法在未选中时从文本框中删除值..我试过了

if( aInput[0].checked == false){

    aTxt[0].value = aInput[0].value;

}

但它不起作用

原文由 Ulysse Corbeil 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 272
1 个回答

根据 MDN ,获取复选框的值属性的结果将 始终 是字符串“on”或您在其他地方指定的另一个值。当您选中或取消选中该框时,它 不会改变

因此,文本框的值将始终设置为相同的值。

你自己看:

 checkbox = document.getElementById("checkbox");

checkbox.addEventListener('change', function(e) {
  console.log(checkbox.checked, checkbox.value);
});
 <input id="checkbox" type="checkbox">

您需要修改您的代码,例如如下:

 if (aInput[0].checked) {
    aTxt[0].value = aInput[0].value;
} else {
    aTxt[0].value = ''; // define a value
}

原文由 le_m 发布,翻译遵循 CC BY-SA 3.0 许可协议

推荐问题