2012-05-22 12 views
7
<div id="hour" style="display: none">2</div> 

JavaScript-Code:document.getElementById() Rückgabewert undefined in Chrom

<script type="text/javascript"> 
    var _h = document.getElementById('hour').value 
    alert(_h); 
</script> 

Chrome undefined zurückgibt. Was ist das Problem?

+0

"In Chrome"? Vermutlich auch ein Problem in anderen Browsern, oder sagen Sie, Chrome ist der einzige mit einem Problem? – nnnnnn

Antwort

26

Die .value Eigenschaft gilt Elemente (Eingänge), nicht divs zu bilden. Der einfachste Weg, um den Inhalt Ihres div-Elements zu erhalten, ist .innerHTML:

+0

Dank! Das hat mir sehr geholfen. – Zy0n

1
document.getElementById("hour").innerText 

oder

document.getElementById("hour").innerHTML 
+0

-1 für 'document.all' – epascarello

+0

:) Und bitte eine bessere Antwort – neohope

+0

document.all geben ist sehr schlechte Praxis. Kodieren Sie für IE5? Und ich gab eine bessere Antwort mit mehr Stimmen. ;) – epascarello

3

divs haben keinen Wert. Es ist keine Eingabe.

Sie wollen innerHTML- oder innertext/textcontent verwenden.

Verwandte Themen