我在使用表单时遇到了javascript“innerHTML”函数的问题。我一直在向表单添加更多选项(并将它们发送到数组中的服务器,例如foo [])。问题是,如果用户按下将另一个元素添加到表单以添加另一个选项,那么他们所选择的以前的选项将被删除。Javascript删除表单输入添加到innerHTML
我想要发生的只是在标签内添加同一类型的另一个元素。我的目标是IE9,而不是使用任何框架。我使用:
document.getElementById("contents").innerHTML += this.item;
哪里this.item
是我想要添加到该行的结束的代码。
我想知道的是,通过我想添加的代码树来递归创建节点树,然后使用appendChild做最好的方法,或者有更好的方法吗?
你每天都学到新的东西...... +1 – Matt 2012-01-18 15:23:57
@马特真的,我不得不承认自从我知道这件事之后不久,这种方法非常棒,几乎和js本身一样古老,为什么它不那么知名? – Esailija 2012-01-18 15:28:39
请参阅[本文](http://ejohn.org/blog/dom-insertadjacenthtml/)了解IE6中insertAdjacentHTML的一些限制。并且,[MDN](https://developer.mozilla.org/en/DOM/Element.insertAdjacentHTML)表示,直到第8版,Firefox才支持它。听起来非常有用,如果你有一个支持它的浏览器。 – jfriend00 2012-01-19 15:00:36