0

重複の可能性:
JavaScript から DIV 要素にアクセスする

次のような HTML コードがあります。

<div id="headerlist" >
<h3> Enrollment Efficiency</h3>
</div>

要素登録効率にアクセスする必要があります

私は試しています:

var headerlist = document.getElementsById('headerlist');
alert("the value of headerlist is "+ headerlist.firstChild);

しかし、うまくいきません。

4

5 に答える 5

3

ただのタイプミス。ですgetElementById()(複数形はsありません)。

var headerlist = document.getElementById('headerlist');

idはドキュメント全体で一意である必要があるため、この関数によって返される要素は 1 つだけです。with のように複数の要素が一致する可能性がある場合getElementsByName()、複数の がありsます。

編集

@Cerbrus で言及されているように:firstChild属性は、その内容ではなく、最初の子要素を指すだけです。

ここにコメントするには:

  1. あなたのfirstChild例では、単なる空白のテキストノードです。次の非空白ノードの使用が必要な場合firstElementChild(ほとんどの最新のブラウザーでサポートされています)。

  2. コンテンツを表示するには、innerHTMLまたはのようなものを使用しますtextContent

于 2013-01-08T08:43:42.383 に答える
2

関数getElementByidは複数ではなく単数です。

于 2013-01-08T08:42:55.420 に答える
1

他の人が言ったように、sfrom getElementsById-->を削除しgetElementByIdます。

また、firstChildと を区切った textNode を返しdivますh3。これを試して:

function getFirstChild(element) {
    do { 
        element = element.firstChild;
    } while (element && element.firstChild!== 1);
    return element;
}
// Usage: getFirstChild(headerlist);

その結果:

var headerlist = document.getElementById('headerlist');
console.log("the value of headerlist is ", getFirstChild(headerlist).innerHTML);
于 2013-01-08T08:48:12.923 に答える
0

おそらく、内部の HTML 要素のデータにアクセスしたいと思うでしょう。だから、これがあなたのコードです。

ここをチェック

次の方法で、親要素のすべての子にアクセスできます。

<!DOCTYPE html>
<html>
<body>
<div id="amu">
<div id="a"> aa </div>
<h1>aaaa </h1>
<h3> bbbb </h3>
</div>

<div onclick="check()"> click Me </div>
</body>
<script>
function check() {
var childNodeArray = document.getElementById('amu').getElementsByTagName('*');
alert(childNodeArray.length);
for (i=0; i < childNodeArray.length; i++)
alert(childNodeArray[i].innerHTML);
}
</script>
</html>
于 2013-01-08T08:58:29.180 に答える
-1

このコードを jQuery で試してください (javascript のライブラリ)

alert($("#headerlist").eq(0).text());

デモ

于 2013-01-08T08:46:40.323 に答える