如何在不删除标签内的整个html的情况下使用innerHTML?

时间:2013-06-07 14:32:07

标签: javascript innerhtml

我已经搜索了几乎整个互联网但无法得到关于此的解决方案..

假设我们有一个div元素,里面有一些html。在通过其id(或其他选择器,无论如何)选择此标记后,如果我使用“innerHTML”方法,我丢失了标记内的所有html。我怎么能不破坏标签内的HTML部分?我只是想添加“更多”的东西,而不是“毁掉所有”,然后在新的东西中插入一些东西。

document.getElementById('something').innerHTML = document.getElementById('something').innerHTML + new_html_to_append;

上面的方法不能用于第三次迭代,或者在for循环中,所以它对我来说没用..我需要适合无限补充的东西。

谢谢!

(我知道.append()方法,但我不允许在那里使用JQuery。)

3 个答案:

答案 0 :(得分:0)

使用innerHTML()可能会导致一些意外行为。从这里查看appendChild()等替代方案:

How to append data to div using javascript?

答案 1 :(得分:0)

使用AppendChild()。在使用此函数时,请注意使用正确的函数,如果必须添加像div这样的HTML元素。然后使用

obj=document.createElement(something);
document.getElementById("something").appendChild(obj);

但如果是文本节点那么

obj=document.createTextNode(something);
document.getElementById("something").appendChild(obj);

答案 2 :(得分:-1)

的appendChild()

...................................