【问题标题】:How to convert CDATA.data value to proper innerHTML.如何将 CDATA.data 值转换为正确的 innerHTML。
【发布时间】:2018-06-23 08:27:59
【问题描述】:

如何将 CDATA.data 值转换为正确的 innerHTML。

我在运行时有这个响应值,即 cdata。

双引号"

]]>

我需要转换 div 的值,即 "到 UI 中的“”

我可以得到如下html的值。

htmlValue = cdataNode.data;

这将是双引号”

并分配给 div.innerHTML = htmlValue;

但在 UI 中,它会显示 DoubleQuotation"。

我需要将值显示到 DoubleQuotation",但它显示的是 DoubleQuotation"

innerHTML 无法转换innerText。知道我们该如何解决这个问题吗?

标签: javascript html cdata


【解决方案1】:

如果使用 jQuery,您可以尝试以下操作:

var htmlValue = cdataNode.data;
div.innerHTML = $('<textarea />').html(htmlValue).text();

如果不使用 jQuery,则可以使用以下内容:

var htmlValue = cdataNode.data;

tempTag = document.createElement('TEXTAREA');
tempTag.innerHTML = htmlValue;

div.innerHTML = tempTag.innerText;

【讨论】:

  • tempDiv.innerText 只会给出 DoubleQuotation" 但它应该带有
    DoubleQuotation"
    。 innerText 只返回值。我需要用 div 显示
  • 哦,好吧,如果你使用 jQuery,你可以使用那个 jQuery 解决方案。同时我会发现如何在没有 jQuery 的情况下做同样的事情。
  • @sree 我已经更新了我的答案,现在它在没有 jQuery 的情况下也可以正常工作。看看吧。
  • 太棒了。这就是我需要的。它工作正常。非常感谢。
猜你喜欢
  • 1970-01-01
  • 2017-02-14
  • 1970-01-01
  • 2019-11-15
  • 1970-01-01
  • 2021-10-21
  • 2020-08-28
  • 2012-04-30
  • 1970-01-01
相关资源
最近更新 更多