我有一个div,其中包含一个文本输入字段:
<div id="age" class="fullScreen">
<input type="text" id="age" class="textInput" placeholder="Please enter age..." />
<button type="button" onclick="submitAge()">Submit</button>
</div>
submitAge()如下所示:
function submitAge() {
var ageVal = document.getElementById("age").text;
alert(ageVal);
}
但是在Google Chrome和Webkit Nightly中,我看到一条警告文字“未定义”(我无法在任何其他浏览器中测试,因为该页面包含网络套接字)。
Chrome开发人员工具显示了这一点:
我认为问题是输入不在表单中,但我不希望它在表单中,因为我将通过websockets提交数据。
我必须把它放在一个表格中还是有更好的解决方案?
感谢。
答案 0 :(得分:6)
您已重新定义了ID“年龄”。重命名你的div或输入,你应该没事。
答案 1 :(得分:4)
尝试:
function submitAge() {
var ageVal = document.getElementById("age").value;
alert(ageVal);
}
答案 2 :(得分:1)
var ageVal = document.getElementById('age').value;
alert(ageVal)
请注意.value而不是text
答案 3 :(得分:1)
变化:
var ageVal = document.getElementById("age").text;
到
var ageVal = document.getElementById("age").value;
答案 4 :(得分:1)
尝试
document.getDocumentById("age").value;
答案 5 :(得分:1)
您<div>
的年龄为id。这将返回div或HTMLElements数组。获取输入的唯一 ID,您将获得金色