Ajax进入ERROR的部分条件总结

$.ajax({
        type: 'POSTget',
        url: '***',
        data: {***},
        dataType: 'json',
        success: function (sort) {
        },
error: function (XMLHttpRequest, textStatus, errorThrown) {
        //弹出报错内容   alert(XMLHttpRequest.status); alert(XMLHttpRequest.readyState); alert(textStatus); } });

注意:出现任何错误都会跳到error函数里

常见错误:

1. dataType错误

   类型错误:后台返回的dataType类型和前台写的不一致会跳入error

   格式错误:jquery1.4之后对json的格式要求非常严格,json格式错误也会跳入error.{"test":1} 注意格式

   有时,在不需要返回值的情况下,扔按模板格式,设置了dataType:"json",参数;这时候,ajax传值正确时,出现200返回成功状态下报错的特殊情况。

  如果你在success中使用eval处理数据就是这个错误了!!!

2. async请求同步异步问题

    async默认是true(异步请求),如果想一个Ajax执行完后再执行另一个Ajax, 需要把async=false

3. data不能不写

   data为空也一定要传"{}";不然返回的是xml格式的。并提示parsererror. data:"{}"

   parsererror的异常和Header 类型也有关系。及编码header('Content-type: text/html; charset=utf8');

4. 传递的参数

    必须是ajax支持的编码格式

5. URL路径问题

    路径不能有中文



原文地址:https://www.cnblogs.com/core404/p/6433405.html