用jQuery监听ajax POST响应

Sai*_*han 4 ajax jquery xmlhttprequest

我正在研究一个做一些ajax动作的项目.现在ajax调用是通过脚本完成的,我不想进入这些脚本.

此外,发回的响应非常随机,并不容易抓住.他们没有固定的课程,我可以寻找.

对我来说最好的选择是,无论何时通过页面上的任何函数返回帖子,我的一个函数都会被触发.请注意,我不知道从哪里打电话,我对此不感兴趣.我唯一想知道的是收到的帖子.我对实际的回复后数据也不感兴趣.只要页面从页面发出的POST收到一些响应时,只想激活一个函数.

这样的事情是可能的.

Boj*_*les 8

看看.ajaxSetup().它允许您添加为从JS代码中的任何位置触发的任何AJAX事件执行的代码.

要在success:事件上运行某些东西,这将解决问题:

$.ajaxSetup({
    success: function() {
        // Your code
    }
});
Run Code Online (Sandbox Code Playgroud)

要捕获任何AJAX事件,无论是否失败,请使用以下命令:

$.ajaxSetup({
    ajaxComplete: function() {
        // Your code
    }
});
Run Code Online (Sandbox Code Playgroud)


Fai*_*faq 5

Bojangles 答案的另一个变体是您可以传递这样的附加参数,以便您可以更好地控制请求。

由于此代码将在每个请求上运行,因此如果您想触发 Click 函数,您可能不希望时不时地为每个请求触发它。因此,您可以将点击代码包装在一些条件 IF 语句中。

$(document).ajaxComplete(function(event,request, settings){
    // Your code here
});
Run Code Online (Sandbox Code Playgroud)