我正在使用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页面上。在警报(回复['描述'])我收到
<p><span class="
修改
当我使用
时jQuery.parseJSON('{"name":"John"}');
一切都很好,但这段代码
jQuery.parseJSON(response['description']);
给了我一个“Uncaught SyntaxError:Unexpected token&amp;”错误
答案 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