【发布时间】:2022-07-01 23:45:06
【问题描述】:
因此,在我将所有输入都作为复选框编写此代码之前,当我单击或取消单击选项时,它可以 100% 正常工作。
我的问题是我将一些输入更改为单选按钮,现在我的代码的下半部分无法正常工作。
如果我单击一个单选按钮,它会显示值 10,但如果我再次单击它,它会显示 20,然后我可以继续无限单击它,它会不断将值添加到 100000 而不是简单地从 0 到 10 又回到 0。
document.addEventListener("click", ({ target }) => {
if (target.className === "class1" && target.checked) {
window.menuItems += parseInt(target.value);
} else if (target.className === "class1" && !target.checked) {
window.menuItems -= parseInt(target.value);
// this logic below for my radio buttons doesn't work the same
} else if (target.className === "radio1" && target.checked) {
window.tip += parseInt(target.value);
} else if (target.className === "radio1" && !target.checked) {
window.tip -= parseInt(target.value);
} else {
return;
}
是否有内置函数来检查是否选择了无线电输入?
因为使用target.checked 对单选按钮不起作用,我也尝试了target,但效果不一样。
【问题讨论】:
标签: javascript forms radio-button