0

次のスクリプトで div 要素が作成されると思いましたが、html に何も出力されませんでした。誰か助けてくれませんか?どうもありがとう。

var div=document.createElement('div');
div.setAttribute('id','testttttttt');

div.innerHTML='fjsoidfjiosdjfoi';​
4

5 に答える 5

4

HTML はサーバー上にあるため、HTML には何も表示されません。

要素を DOM に追加していないため、DOM では何も得られません。

document.body.appendChild(div);
于 2012-07-05T17:45:37.687 に答える
3

appendChild最後にメソッドを使用する必要があります。

var div=document.createElement('div');
div.setAttribute('id','testttttttt');
div.innerHTML='fjsoidfjiosdjfoi';​
document.body.appendChild(div);

それ以外の場合、作成された要素は存在しますが、ページには表示されません。

また、存在することを確認する必要がありdocument.bodyます。そうしないと、エラーがスローされます (このスクリプトがロード時に実行される場合は、onloadイベント内に配置します)。

PS: 他の DOM 要素に追加することもできます。

document.getElementById('myDivHolder').appendChild(div);

JSFiddle の例: http://jsfiddle.net/AkXTr/

于 2012-07-05T17:45:16.020 に答える
3

要素を作成するだけでなく、それを DOM に挿入する必要があります。メソッドを使用してappendChild()、特定の親要素の末尾に追加できます。

var div=document.createElement('div');
div.setAttribute('id','testttttttt');

div.innerHTML='fjsoidfjiosdjfoi';

// Now, append it
document.getElementById('someOtherElement').appendChild(div);
于 2012-07-05T17:45:17.103 に答える
2

実際には、それを何かに追加する必要があります。私はするdocument.bodyだろうと思います。

var div = document.createElement('div');
div.id = 'testttttttt';
div.innerHTML = 'fjsoidfjiosdjfoi';​

document.body.appendChild(div);

document.bodyただし、実際に存在する場合、つまりloadイベント内またはbody要素自体の内部でこれを行うようにしてください。

于 2012-07-05T17:45:29.890 に答える
1

div を正しく作成しましたが、どこにもぶら下がっていません。ドキュメントに挿入する必要があります。

        var div=document.createElement('div');
        div.setAttribute('id','testttttttt');
        div.innerHTML='fjsoidfjiosdjfoi';
        document.getElementsByTagName("body")[0].appendChild(div);
于 2012-07-05T17:50:24.817 に答える