在jquery中捕获所有ajax请求

我想在每次发送ajax请求时显示“正在加载”进度条。 是否有可能通知使用jQuery发送ajax请求ANYTIME?

您可以使用$.ajaxSetup()方法设置将应用于整个页面的全局AJAX属性:

 $.ajaxSetup({ beforeSend: function() { // show progress spinner }, complete: function() { // hide progress spinner } }); 

由于某种原因, $.ajaxSetup()不能为我工作。 阅读完文档后 ,我发现了以下内容:

注意:全局回调函数应该使用它们各自的全局Ajax事件处理程序方法设置 – .ajaxStart(),. ajaxStop(),. ajaxComplete(),. ajaxError(),. ajaxSuccess(),. ajaxSend() – 而不是在$ .ajaxSetup()的options对象。

尝试$.ajaxStart()$.ajaxComplete()代替:

 $(document).ajaxStart(function () { console.log('Request Initiated'); }); $(document).ajaxComplete(function () { console.log('Request Complete'); }); 

尝试使用jQuery的ajaxStart事件