Warum erhalte ich nicht den Wert dieses text-input-Feld?

Ich habe ein div, welches eine text-Eingabe-Feld:

<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() sieht wie folgt aus:

function submitAge() {
  var ageVal = document.getElementById("age").text;
  alert(ageVal);
}

Aber in Google Chrome und Webkit Nightly sehe ich ein alert mit dem text "undefined" (ich kann das nicht testen, in jedem anderen Browser, da die Seite enthält web-sockets).

Den chrome developer tools zeigen dies:

Warum erhalte ich nicht den Wert dieses text-input-Feld?

Ich gehe davon aus, dass das problem ist, dass die Eingabe nicht in einem Formular, aber ich möchte es nicht in einer form, da ich die übermittlung der Daten über websockets.

Muss ich es in eine form oder gibt es eine bessere Lösung?

Dank.

Sie haben 2 HTML-Elemente mit ID = Alter
Nicht zu veröffentlichen noch eine andere Antwort, weil zwischen all den anderen Antworten, Sie habe zwei Probleme, aber die #1 kann man nicht mehr als ein element mit der gleichen ID, das Verhalten ist undefiniert. #2 Sie müssen value nicht text

InformationsquelleAutor JJJollyjim | 2011-06-07

Schreibe einen Kommentar