为什么我不能获得此文本输入字段的值?

时间:2011-06-07 20:06:29

标签: javascript html forms input

我有一个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开发人员工具显示了这一点:

ageVal: undefined

我认为问题是输入不在表单中,但我不希望它在表单中,因为我将通过websockets提交数据。

我必须把它放在一个表格中还是有更好的解决方案?

感谢。

6 个答案:

答案 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,您将获得金色