jQuery ajax事件
Ajax请求会产生多种不同的事件,您可以订阅这些事件。下面是完整的事件列表及其广播顺序。
有两种类型的事件−
本地事件
这些是您可以在Ajax请求对象内订阅的回调函数。
全球事件
这些事件会广播给DOM中的所有元素,触发任何可能监听的处理程序。您可以像下面这样监听这些事件-
全局事件可以通过传入global选项来禁用特定的Ajax请求,如下所示−
事件
这是完整的Ajax事件列表。ajaxStart和ajaxStop事件是与所有Ajax请求相关的事件。
-
ajaxStart(全局事件) 如果启动了一个Ajax请求,并且没有其他正在运行的Ajax请求,就会广播此事件。
-
beforeSend(本地事件) 这个事件在启动Ajax请求之前触发,允许您修改XMLHttpRequest对象(如果需要,设置额外的头部信息)。
-
ajaxSend(全局事件) 此全局事件也会在请求运行之前触发。
-
success(本地事件) 只有在请求成功时(没有服务器错误,数据没有错误)才会调用此事件。
-
ajaxSuccess(全局事件) 只有在请求成功时才会调用此事件。
-
error(本地事件) 只有在请求出现错误时才会调用此事件(您不能同时有错误和成功的回调)。
-
ajaxError(全局事件) 此全局事件的行为与本地的错误事件相同。
-
complete(本地事件) 无论请求成功与否,都会调用此事件。即使是同步请求,您也始终会收到complete回调。
-
ajaxComplete(全局事件) 此事件与complete事件的行为相同,每次Ajax请求完成时都会触发。
-
ajaxStop(全局事件) 如果没有正在处理的Ajax请求,就会触发此全局事件。