【问题标题】:innerHtml and innerText destroys tabs in Internet ExplorerinnerHtml 和 innerText 破坏 Internet Explorer 中的选项卡
【发布时间】:2010-08-11 14:19:24
【问题描述】:

我想获取文本区域的内容并将其放入<pre>。问题是,如果我将 pre 的 innerHTML 属性设置为 textarea 的值,则 Internet Explorer 中的所有制表符和换行符都将被删除。如果我使用 innerText 而不是 innerHtml 我会得到换行符,但制表符仍然会消失。在其他浏览器中运行良好。

有解决办法吗?

【问题讨论】:

    标签: javascript html internet-explorer innerhtml


    【解决方案1】:

    创建一个 DOM 文本节点:

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

    Windows 样式的换行符 (\r\n) 是伪造的(DOM 内容应该始终具有标准化为 \n 的换行符),但出于某种原因在 IE 中似乎是必需的。

    【讨论】:

      猜你喜欢
      • 2012-04-01
      • 2013-06-21
      • 1970-01-01
      • 2020-06-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多