jQuery中的Ajax事件分为两种:局部事件和全局事件
事件的顺序如下:
ajaxStart——全局:开始新的Ajax请求,且此时没有其他ajax请求正在进行
beforeSend——局部:当一个Ajax请求开始时触发
ajaxSend——全局:请求开始前触发的全局事件
success——局部:请求成功时触发
ajaxSuccess——全局:全局的请求成功
error——局部:仅当发生错误时触发
ajaxError——全局:全局的发送错误时触发
complete——局部:请求完成时触发
ajaxComplete——全局:全局的请求完成时触发
ajaxStop——全局:当没有ajax正在进行中的时候触发
举例:
局部事件
$.ajax({ beforeSend:function() { dosomething... }, complete:function() { dosomething... } });
全局事件
可用bind来绑定,用unbind取消绑定
$("#loading").bind("ajaxSend", function() { });
$("#loading").unbind("ajaxSend", function() { });
也可以直接使用
$("#loading").ajaxComplete(function() {
dosomething...
});
若某一个ajax不希望产生全局事件,则设置global:false
$.ajax({ global:false; ... })