访问单选按钮的值
2012-11-27
99
Html 代码:-
<input type="radio" name="radio" id="radio" value="1" onclick="validate()"> For Yourself</input> </p></br>
<p>
<input type="radio" name="radio" id="radio" value="2" onclick="validate()"> For Users</input>
</p>
JavaScript 代码:-
function validate()
{
var btn_value=document.getElementById("radio").value;
if(btn_value==true)
{
alert(btn_value);
}
}
现在,每当我尝试打印单选按钮的值时。它总是将值打印为 1。
所以,现在我不明白我到底错过了什么……
提前感谢您的帮助。
3个回答
元素
ID
应是唯一的。我修改了您的 HTML 和 JS 部分并检查以下内容
试试这个
HTML
<p>
<input type="radio" name="radio" id="radio1" value="1" onclick="validate(this)"> For Yourself</input> </p></br>
<p>
<input type="radio" name="radio" id="radio2" value="2" onclick="validate(this)"> For Users</input>
</p>
JavaScrpit
function validate(obj)
{
var btn_value=obj.value;
if(btn_value==true)
{
alert(btn_value);
}
}
Muthu Kumaran
2012-11-27
首先,永远不要在 html 中使用两次 DOMID! 删除它们....只使用重复的名称!
<input type="radio" name="radio" value="1" onclick="validate()"> For Yourself</input> </p></br>
<p>
<input type="radio" name="radio" value="2" onclick="validate()"> For Users</input>
</p>
使用 js 检查具有 name 属性的每个元素!
function validate() {
var elements = document.getElementsByName("radio");
for(var n = 0; n < elements.length; n++) {
if(elements[n].checked === true) {
alert(elements[n].value);
}
}
}
如果您仅在 onclick 中使用验证方法,则可以像这样在验证方法中传递 domelement:
<input type="radio" name="radio" value="1" onclick="validate(this)"> For Yourself</input> </p>
和您的 js:
function validate(domElement) {
if(domElement.checked === true) {
alert(elements[n].value);
}
}
silly
2012-11-27
尝试一下
<input type="radio" name="radio" id="radio" value="1" onclick="validate(this)"> For Yourself</input> </p></br>
<p>
<input type="radio" name="radio" id="radio" value="2" onclick="validate(this)"> For Users</input>
</p>
function validate(ele)
{
alert(ele.value);
}
Pragnesh Chauhan
2012-11-27