1.状态码返回200--代表服务器正常响应了客户端的请求;ajax
2.经过firebug和IE的httpWatcher能够看出服务器端返回了正常的数据,而且是符合业务逻辑的数据,但程序就是不进入回调函数success:function(data){****}而是进入到error: function(data){***},记得上次是由于存在跨域访问的问题致使。此次查看不存在跨域的问题; json
3.返回的数据类型必定要符合定义的数据类型。即若是你定义的 dataType 是 json 类型的,那么返回来的数据必定是 json 才能够,否则就会执行 error 里的程序;跨域
4.同时须要特别的注意返回的JSON数据是不是严格的JSON格式;服务器
5.也应该严重关切当后台返回的是一个List 数据(List当中的数据是Json格式)时,有没脏数据即不是严格的JSON格式。很隐蔽的多是数据某一个字段中在开始或末尾含有特殊字符,以"回车键"、"Tab键"等;函数
6.还有一点对JQuery 中ajax的一点其它的认识: 客户端发起请求,获得服务器端的相应是200(正确拿到服务器响应的数据)没有问题.此时在判断进入success 对应的回调函数仍是进入到error对应的回调函数以前,可能会校验一些东西:回调函数
a.返回的每条数据是不是dataType中定义的数据类型。若是有部分数据不是或者哪怕一条数据没有严格的按照dataType定义的类型,程序就会进入到error:function(){****};io
b.请求的域和当前域是不是同一域,若是不是同一域也十分有可能进入error:function(){***}。function
------------------------------------------------------------------------------------------------------------后台
经过以上总结,再对照ajax看了一遍,发现少配了一个属性(dataType属性)由于数据类型返回的是json类型,而没有配dataType:'json'这一属性,因此致使出现了此问题。服务器端