如何从';HTML表单';到javascript代码?
表格包括收音机、选择、输入等如何从';HTML表单';到javascript代码?,javascript,dom,Javascript,Dom,表格包括收音机、选择、输入等 var variable = document.getElementById('anyId').value; 它可以与输入元素配合使用,但与单选按钮元素配合使用时效果不佳 在我的HTML页面(用于收音机)上,代码如下所示 <input type="radio" id="radioValue" name="radio" value="2">Radio_1 <input type="radio" id="radioValue" name="radio
var variable = document.getElementById('anyId').value;
它可以与输入元素配合使用,但与单选按钮元素配合使用时效果不佳
在我的HTML页面(用于收音机)上,代码如下所示
<input type="radio" id="radioValue" name="radio" value="2">Radio_1
<input type="radio" id="radioValue" name="radio" value="1">Radio_2
radio\u值始终等于2,无论您选择radio\u 1还是radio\u 2。ID必须是唯一的。因此,您应该将代码更改为:
<input type="radio" id="radioValue1" name="radio" value="2">Radio_1
<input type="radio" id="radioValue2" name="radio" value="1">Radio_2
否则,尝试读取具有相同ID的两个值只会得到其中的第一个值。使用getElementsByName
var selectedradio;
var radios = document.getElementsByName("radio");
for(var i = 0; i < radios.length; i++) {
if(radios[i].checked == true) {
alert(radios[i].value);
selectedradio = radios[i].value;
}
}
var-selectedradio;
var radios=document.getElementsByName(“radio”);
对于(变量i=0;i
适用于大多数现代浏览器的纯javascript。(也适用于ie 9)
如果您只有一个表单和一组收音机,请使用querySelector
这是新的正确方法
var radio_value=document.querySelector('input[type="radio"]:checked').value
如果您有多个广播组和表单,也可以轻松地扩展它
var radio_value=document.querySelector('#YOURFORM input[name="radio"]:checked').value
ID必须是唯一的!他可以使用JQuery获得id=“radioValue”不需要唯一的所有输入元素,比如$('div[id^=“radioValue”])@drakoumelitos,首先:id必须是唯一的;第二:他没有标记jQuery。@drakoumelitos这是个糟糕的建议。首先,ID必须是唯一的(请阅读W3C规范),其次,jQuery不需要做这么琐碎的事情。为什么ID必须是唯一的?这将是更好的“组”他们使用一个类,但我仍然没有看到任何问题,如果你知道你在做什么与你的elements@drakoumelitos:因为HTML标准这么说,调用getElementById
不会让你感到惊讶。单选按钮元素已按名称
分组。
var radio_value=document.querySelector('input[type="radio"]:checked').value
var radio_value=document.querySelector('#YOURFORM input[name="radio"]:checked').value