【问题标题】:Javascript html decodingJavascript html解码
【发布时间】:2011-06-09 05:41:46
【问题描述】:

当我在 asp.net 应用程序中通过 ajax 接收 html 文本时,它看起来像:

<span%20style='color:green;font-weight:bold'>%20Text%20Msg</span>

如何在 javascript 中将该文本解码为普通 html?

<span style='color:green;font-weight:bold'> Text Msg </span>

谢谢!

【问题讨论】:

  • 它看起来没有技术原因 - 特别是因为它看起来像是 HTML 和 URL 编码的奇怪混合,JSON 都不需要。您应该检查您的服务器端脚本并找出它被编码的原因并将其关闭。
  • 您是否使用 XSLT 来生成标记?生成此代码的原因是什么?
  • 看起来字符串是双重编码的:首先是 Html 编码,然后是 URL 编码。为什么会这样?

标签: javascript asp.net encoding decoding


【解决方案1】:

您可能最适合寻找 cmets 中已经提到的服务器端解决方案,因为这似乎是服务器端问题。

如果你出于某种原因还是希望做这个客户端,这里有一个解决方案:

var str = "&lt;span%20style='color:green;font-weight:bold'&gt;%20Text%20Msg&lt;/span&gt;";
var fixedStr = decodeURIComponent(str).replace(/&lt;/g,'<').replace(/&gt;/g,'>');

【讨论】:

    【解决方案2】:

    这里有一个很好的功能可以为你做这件事 - http://phpjs.org/functions/htmlspecialchars_decode:427

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2018-01-14
      • 2012-05-29
      • 1970-01-01
      • 2015-01-22
      • 1970-01-01
      • 2011-11-15
      相关资源
      最近更新 更多