我有一个带有无线电输入的HTML表单,并希望使用javascript来分析结果。我在查看JavaScript函数中的表单信息时遇到困难:
function getResults(formInput){
alert (formInput.question1);
}
其中question1是我的单选按钮组的“名称”。
这将返回“对象Nodelist”,我不知道出了什么问题,我希望它返回“1”,这是我选中时单选按钮的值。
我不想知道哪个单选按钮被选中,哪个不是,我需要知道与所选单选按钮相关的值。
您所指的object Nodelist
正在返回,因为您有一组共享相同名称的元素。如果要查看已选中的单选按钮的值,则需要遍历集合:
function getResults() {
var radios = document.getElementsByName("question1");
for (var i = 0; i < radios.length; i++) {
if (radios[i].checked) {
alert(radios[i].value);
break;
}
}
}
您可以获得更简单和优雅的解决方案:
<input type=radio name=my_radio value=value_1>
var my_form = document.querySelector('#my_form');
var my_radio = my_form.elements.my_radio;
alert(my_radio.value) // this is the radionodelist.value you can check it on mdn