无法在javascript中浏览JSON内容

时间:2011-06-28 20:18:59

标签: php javascript jquery json

我正在使用PHP的json_encode函数生成一个JSON文件,并且我使用"转义了双引号字符,因此输出行看起来像这样:

"apply_instructions":"<p>Visit <a href=&#34;http:\/\/www.google.com&#34;>www.google.com<\/a><\/p>"

然后我使用JQuery的getJSON函数来检索并循环遍历该文件。我试图使用以下代码&#34;取消编码:

entry.apply_instructions = entry.apply_instructions.replace('&#34;', '"');

无论出于何种原因,它都无法正常工作。第一个引号似乎正在被替换,但第二个引号不会让步。我尝试过使用其他随机查找和替换字符,结果相似。

3 个答案:

答案 0 :(得分:2)

.replace()仅替换第一个实例,您需要使用正则表达式进行全局替换。

IE:

.replace(/&#34;/g, "\"");

答案 1 :(得分:1)

尝试不转义引号(在php中):

$arr = array( 
    "apply_instructions"=>'<p>Visit <a href="http://www.google.com">www.google.com</a></p>'
);

echo json_encode($arr); // it will do all the escaping for you

请参阅演示:http://codepad.org/VzT99sqM

答案 2 :(得分:0)

您可以使用正则表达式替换&#34;的所有实例。

或使用其他函数来使用反斜杠转义引号。