我有几个同名的单选按钮。像这样:
<form name="formA">
<input type="radio" name="myradio" value="A"/>
<input type="radio" name="myradio" value="B"/>
<input type="radio" name="myradio" value="C"/>
<input type="radio" name="myradio" value="D"/>
</form>
现在我必须通过 javascript 将事件侦听器添加到所有单选按钮。如果下面的伪代码是错误的,那么请告诉我该怎么做-
var radios = document.forms["formA"].elements["myradio"];
for(radio in radios) {
radio.onclick = function() {
alert(radio.value);
}
}
原文由 Acn 发布,翻译遵循 CC BY-SA 4.0 许可协议
JavaScript 中的 for in 循环返回键,而不是值。要使 for in 循环正常工作,假设您没有向数组添加自定义属性,您可以这样做:
但是您应该 始终 使用常规 for 循环来循环数组,以避免意外包含自定义添加的可枚举属性: