【发布时间】:2015-02-24 18:26:13
【问题描述】:
我正在尝试为单选按钮列表创建验证,如果成功,则会提示确认框。确认框必须说明用户选择了哪个按钮,然后允许他们确认。
验证有效,但是当弹出框出现时,我无法让用户的选择显示在消息中,无论是使用checked 还是checked.value。代码如下:
var checked = null;
var inputs = document.getElementsByName('levels');
for (var i = 0; i < inputs.length; i++) {
if (inputs[i].checked) {
checked = inputs[i];
break;
}
}
if(checked==null)
{
alert('Please choose an exam level.');
return false;
}
else {
return confirm('You have chosen '+ checked + ', is this correct?');
}
使用此代码,无论选择哪个按钮,显示的消息都是“您选择了 [object HTMLInputElement],这是正确的吗?”。
如何正确引用变量以避免这种情况?
【问题讨论】:
-
你可能想要
checked = inputs[i].value。inputs[i]是 DOM 元素,当转换为字符串时,它变为"[object HTMLInputElement]"(在输入元素的情况下)。 -
演示:jsfiddle.net/cm57yj73。您应该将您的评论作为答案发布,@Halcyon 或者该问题应标记为关闭作为离题->无法再复制的问题或简单的印刷错误。
标签: javascript validation variables messages confirmation