ajaxStart()只调用一次,但ajaxComplete()调用多次 [英] ajaxStart() called only once but ajaxComplete() called multiple times

查看:206
本文介绍了ajaxStart()只调用一次,但ajaxComplete()调用多次的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我想在我的页面上调用每个AJAX请求时做一些事情。

I would like to do something on the call of every AJAX request on my page.

我在这里看了这里


ajaxStart(全局事件)



如果启动了Ajax请求,则广播此事件其他Ajax请求当前正在运行。

ajaxStart (Global Event)

This event is broadcast if an Ajax request is started and no other Ajax requests are currently running.


ajaxComplete(全局事件)



此事件的行为与complete事件相同,并且每次Ajax请求完成时都会触发。

ajaxComplete (Global Event)

This event behaves the same as the complete event and will be triggered every time an Ajax request finishes.

这意味着我只能跟踪一个ajax事件的开始而不是每个单独的请求?

This means I can only track the start of one ajax event and not each individual request?

$(document).ajaxStart(function () {
    var t = new Date(),
        h = t.getHours(),
        m = t.getMinutes(),
        s = t.getSeconds(),
        ms = t.getMilliseconds();
    console.log("Triggered ajaxStart handler   at " + h + ":" + m + ":" + s + ":" + ms);
});


$(document).ajaxComplete(function () {
    var t = new Date(),
        h = t.getHours(),
        m = t.getMinutes(),
        s = t.getSeconds(),
        ms = t.getMilliseconds();
    console.log("Triggered ajaxComplete handler at " + h + ":" + m + ":" + s + ":" + ms);
});

给我

Triggered ajaxStart handler    at 11:14:33:409 
Triggered ajaxComplete handler at 11:14:33:480 
Triggered ajaxComplete handler at 11:14:33:489 
Triggered ajaxComplete handler at 11:14:33:491 
Triggered ajaxComplete handler at 11:14:33:492 
Triggered ajaxComplete handler at 11:14:33:535 
Triggered ajaxComplete handler at 11:14:33:539 
Triggered ajaxComplete handler at 11:14:33:567 
Triggered ajaxComplete handler at 11:14:33:569 

有没有办法记录每个ajax启动所以我可以为每个ajax事件附加一个偶数?

Is there any way to log every ajax start so I can attach an even to every single ajax event?

推荐答案

您想要 .ajaxSend 事件,发送给每个 AJAX请求,而不仅仅是第一个未完成的请求。

You want the .ajaxSend event, which is sent for every AJAX request, not just the first outstanding one.

这篇关于ajaxStart()只调用一次,但ajaxComplete()调用多次的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆