我正在使用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吗?
答案 0 :(得分:0)
第二个在每个逗号后面都有一个空格(或其他一些显示的字符)。如果这是json_encode()
调用输出它的方式,那么在将其返回到AJAX函数之前,可以运行一个额外的度量来确保那些空格不存在:
$encoded_text = str_replace(" ","",$encoded_text);
如果您的数据通常有空格,请不要使用它。我不确定这是否是导致它不起作用的原因,但这是你向我们展示的字符串的唯一区别。
您还可以使用JSONLint免费验证您的JSON。