jquery ajax中各个事件执行顺序如下

$(function(){

setTimeout(function(){
$.ajax({
url:'/php/selectStudent.php',
});
},0);
$(document).ajaxSuccess(function(){
console.log('success');
})
.ajaxStart(function(){
console.log('start')
})
.ajaxSend(function(){
console.log('send')
})
.ajaxComplete(function(){
console.log('complete')
})

})

jquery中各个事件执行顺序如下:

1.ajaxStart(全局事件)

2.beforeSend

3.ajaxSend(全局事件)

4.success

5.ajaxSuccess(全局事件)

6.error

7.ajaxError (全局事件)

8.complete

9.ajaxComplete(全局事件)

10.ajaxStop(全局事件)

Ajax中success与complete的关系

$.ajax({
      type: "get|post",
      url: url,
      dataType:'data',
      success: function(data) { },
     complete: function(XMLHttpRequest, textStatus) { },
     error: function(){}
});

success : 当请求成功时调用的函数。这个函数会得到一个参数:从服务器返回的数据。当请求成功时调用函数,即status==200。
complete :当请求完成时调用的函数。这个函数会得到两个参数:XMLHttpRequest对象和一个描述请求成功的类型的字符串。当请求完成时调用函数,即status==404、403、302...。

总结 success是只有在请求成功(status=200)时才会执行,而complete在请求完成后都会执行,不管成功失败

原文地址:https://www.cnblogs.com/Tacklingpioneer/p/5269353.html