innerHtml和innerText会破坏Internet Explorer中的选项卡

时间:2010-08-11 14:19:24

标签: javascript html internet-explorer innerhtml

我想获取textarea的内容并将其放在<pre>中。问题是,如果我将pre的innerHTML属性设置为textarea的值,则将在Internet Explorer中删除所有选项卡和换行符。如果我使用innerText而不是innerHtml,我将获得换行符,但标签仍然消失。在其他浏览器中正常工作。

有解决方法吗?

1 个答案:

答案 0 :(得分:5)

创建DOM文本节点:

pre.innerHTML= '';
pre.appendChild(document.createTextNode('A\tB\r\nC'));

Windows风格的换行符(\r\n)是假的(DOM内容应该总是将换行符标准化为\n),但出于某种原因似乎在IE中是必要的。