2

DOMを使用して動的に要素を作成する必要があります。document.createElement、メソッドを使用してそれを行う方法を知っていますappendChildが、これは多くの場合、長いプロセスです。

これをHTMLページに追加したいとします。

<div id="my_account" style="visibility:hidden">
  <input id="my_account_close" type="submit" value="Close" onclick="closeMyAccount();">
  <span id="my_account_username">Blabla</span>
  <input id="my_account_username_modify" type="submit" value="Change Name" onclick="modifyUserName();">
  <span id="my_account_email">a@asqs.com</span>
</div>

各要素を1つずつ作成し、すべての属性を設定してから、appendChildメソッドを使用する必要がありますか?親要素を返すhtmlコードを取得できる「魔法の」関数があるので、最後に追加するだけで済みますか?

4

3 に答える 3

2

いいえ、その文字列全体を取り、それを innerHTML として親 div に追加するだけです。

これは、コードの次の行の dom の一部になります...

someParent.innerHTML = myHTMLString;
var d = document.getElementById('my_account');//this will return the first object in your code
于 2012-10-21T17:15:01.190 に答える
1

innerHTML 関数を使用できます。

document.getElementById(element_id).innerHTML="<p>someHtml</p>";

JS は複数行の文字列をサポートしていないことに注意してください。

于 2012-10-21T17:17:23.953 に答える
0

はい、jQueryと呼ばれる「魔法の」ライブラリがあります:http://api.jquery.com/append/

$("div").append("<div class='aaa'>Example</div>");
于 2012-10-21T17:17:50.663 に答える