Jquery版本导致Ajax不执行success回调函数

668 查看

对于使用ajax来请求数据已经不是第一次使用(一直觉得也就那么回事),就在昨天居然遇到了一个问题?项目中需要用到ajax来进行数据的请求,于是三下五除二的将ajax代码拷贝到项目中,前端,后台数据处理完毕,测试(心想可以休息下下了),谁知数据成功返回、前端没报错,后台也没错,硬是没有执行success回调函数,心凉了一半。

接下来就是找原因,查看原先代码,百度,json格式检查,终于发现问题所在 罪魁祸首居然是Jquery版本所引起的。

Jquery版本:jquery-1.9.0.min.js

随着Jquery版本的提高,对于json格式有着严格的要求,原先类似这种格式的返回信息{success:true,id:1,result:"ok"}在高版本中已不适用,需采取以下格式
复制代码 代码如下:

{"success":true,"id":1,"result":"ok"}

总结:

key:需双引号括起

value:1.数值,布尔类型可不用双引号

2.字符串 需用双引号括起

格式:{success:true,id:1,result:"ok"} 不通过

格式:{"success":true,"id":1,"result":"ok"} 通过