使用json_encode的Cakephp JSON响应不起作用

时间:2012-04-09 12:52:14

标签: php jquery ajax json cakephp

我正在使用ajax函数来获取我的jquery自动完成的数据,但它似乎没有解析json响应,我找不到原因。

我看一下console.log是一个正在工作的另一个json响应而另一个是无效的,在Chrome控制台中,我可以在下面看到。第一个不起作用,第二个起作用。

["17","17","16","20","19","18","23","18","20","18","23","23"]
["25", "24", "25", "24", "24", "23", "21", "23", "22", "21", "22", "22"]

我可以看到第二个数字上有红色,我找不到原因。

有人能找出为什么它不解析这个JSON吗?

1 个答案:

答案 0 :(得分:0)

第二个在每个逗号后面都有一个空格(或其他一些显示的字符)。如果这是json_encode()调用输出它的方式,那么在将其返回到AJAX函数之前,可以运行一个额外的度量来确保那些空格不存在:

$encoded_text = str_replace(" ","",$encoded_text);

如果您的数据通常有空格,请不要使用它。我不确定这是否是导致它不起作用的原因,但这是你向我们展示的字符串的唯一区别。

您还可以使用JSONLint免费验证您的JSON。