2015-09-19 62 views
0

我试图在我的网站上执行每个AJAX请求后执行令牌交换。 为此,我正在使用jQuery函数.ajaxSuccess。 我的问题是,每当我尝试在此函数中执行AJAX请求时,显然将其视为成功,并且这会创建一个循环函数。Ajax上的POST请求完成

如何在一次只能运行一次的函数中创建一次性请求AJAX

I.e.像这样: -

$(document).ajaxSuccess(function() { 
    $.post("somewhere", {some: "data"}, function(data){ 
     console.log(data); 
    }); 
}); 
+1

猜测你有另一AJAX功能的地方导致要触发这个?将你的闭包移动到最初的函数,而不是'全局的'ajaxSuccess函数 – Ragdata

+0

但是,然后我将不得不添加我想要发生的函数到每个Ajax请求的末尾,不是吗? – Polarize

回答

2

您可以检查,如果你确实需要做一个AJAX请求在您的ajaxSuccess处理,像这样

$(document).ajaxSuccess(function(event, xhr, settings) { 
    if (settings.url != "somewhere") { 
     $.post("somewhere", {some: "data"}, function(data){ 
      console.log(data); 
     }); 
    } 
}); 
+0

查看https://api.jquery.com/ajaxsuccess/以供参考 – andlrc

+0

严,哇。为什么我没有想到这个我不知道。为此欢呼。 – Polarize