事件发出后但在完成之前发生火灾事件

我有以下情况。 我需要在我的ajax请求发送之后但在它完成之前发起一些事件。 查看文档,我看到了一大堆事件: beforeSendcompleteerrorsuccessdonealways 。 但是没有任何东西看起来像我想要的事件。

那有可能吗?

只是为了突出我想要实现的目标

  var foo = 'BAR'; $.post('serverURL', { T: foo, }, function(data){ //... }, 'json'); foo = ''; 

所以我有一个类似于此的代码。 它的工作方式非常好(它向服务器发送正确的foo ,而不是在它发送后立即修改它)。 它不是在ajax完成/完成/成功/失败时修改它,而是在它触发后立即修改它。

我想把这个修改foo = ''放在回调中,(比如成功回调)。 只是回答为什么我需要这样做:有些人在阅读代码时,决定通过在其他地方(在ajax之前)移动foo = ''来“改进”它,从而引入难以发现的错误。 类似评论//不要移动它没有帮助。

存在一个全局jQuery ajax事件处理程序:

 $(document).ajaxStart(function(){ ... }); 

,在第一个Ajax请求启动时调用。

这个怎么样?

 formData = { param1: "param1" } $.ajax({ type: 'GET', contentType: 'application/json', url: "https://example.com/detail.php", dataType: "json", data: formData, beforeSend: function() { //before handler }, success: function(data) { //success handler }, complete: function(data) { //complete handler }, error: function(data) { //error handler } });