这是我的基本代码。我只需要打印用户输入的值。但是,它返回undefined。请帮忙。提前谢谢。
脚本
// using getElementsByName() method
function msg(){
var v=document.getElementsByName("name1");
alert("Your name is:"+v[0].innerHTML);
}
HTML
<input type="text" name="name1"/>
<input type="button" value="Submit" onclick="msg()"/>
答案 0 :(得分:4)
使用.value
代替.innerHTML
...
.getElementsByName()
会返回您的期望,您的问题是({miss})使用innerHTML
。
// using getElementsByName() method
function msg() {
var v = document.getElementsByName("name1");
alert("Your name is:" + v[0].value);
}
答案 1 :(得分:2)
我刚刚运行了你的代码,它似乎没有返回undefined。实际上,getElementsByName返回正确的对象。问题是你的警告声明。
你有:
alert("Your name is:"+v[0].innerHTML);
应该是:
alert("Your name is:"+v[0].value);
答案 2 :(得分:1)
尝试使用value
代替innerHTML
document.getElementsByName()
返回所有元素的HTMLCollection,其中包含name属性的给定值。
所以请像alert("Your name is:"+v[0].value);
参考:https://developer.mozilla.org/en-US/docs/Web/API/document.getElementsByName
答案 3 :(得分:-1)
使用此代码
<script>
function msg(){
var v=document.getElementsByName("name1");
alert(v);
alert("Your name is:"+v[0].value);
}
</script>