内部HTML没有将JSON html字符串转换为html

时间:2013-01-04 14:46:29

标签: php javascript html json

我正在使用javascript和php,需要在JSON变量中传递一些HTML(PHP-> JS)。

不幸的是,由于一些环境限制,我可以使用的jQuery受限。使用诸如jQuery.parseJSON(str)$.parseJSON(str)之类的内容会抛出意外的令牌错误。

因此我需要一个纯粹的javascript方法来处理JSON变量中的html。目前,HTML字符串只是作为字符串打印在页面上,但我需要它以HTML格式生效。

我的JS代码如下:

document.getElementById("activeDescription").innerHTML = response['description'];

结果最终只是HTML页面上的文本,如下所示:

<p>helloworld</p>

而我希望只是

helloword

将显示在HTML页面上。在警报(回复['描述'])我收到

&lt;p&gt;&lt;span class=&quot;

修改

当我使用

jQuery.parseJSON('{"name":"John"}');

一切都很好,但这段代码

jQuery.parseJSON(response['description']);

给了我一个“Uncaught SyntaxError:Unexpected token&amp;”错误

1 个答案:

答案 0 :(得分:1)

最有可能是编码问题。您可以通过解码字符来修复。

在javascript中:

var div = document.createElement('div');
div.innerHTML = encoded;
var decoded = div.firstChild.nodeValue;

在PHP中,请查看以下链接:http://www.php.net/manual/en/function.htmlentities.php