1

我读了这个问题,但由于success:function没有多大帮助。它不理解 Ajax 响应的完成。有谁知道如何使用 Ajax 停止特定事件?

详细信息:我有一个发送请求的 Ajax 代码,我希望它在收到响应时执行某些操作。我通过以下函数做到这一点,但它获取了 Ajax 的所有文档,我无法将任何 Ajax 添加到页面。

$(document).ajaxStop(function() {
                ....;
                alert("start");
});
4

1 回答 1

0

ajaxStop旨在用于全局 AJAX 完成行为。您可能想使用常规complete处理程序:

$.ajax({
  url: "some/path.php",
  complete: function() { alert("start"); }
});

或者你也可以使用alwayspromise 方法:

$.ajax({
  url: "http://fiddle.jshell.net/favicon.png",
}).always(function() {
  alert("start");
});

更新:

看看你下面的评论,你可能真的想使用success(尤其是当你对以下内容感兴趣时response

$.ajax({
  url: "some/path.php",
  success: function(response) { alert(response); }
});

或者你也可以使用donepromise 方法:

$.ajax({
  url: "http://fiddle.jshell.net/favicon.png",
}).done(function(response) {
  alert(response);
});

但是,需要注意的是,这两种方法仅在您从服务器收到成功响应(状态代码 200)时才会执行。

于 2013-04-09T20:13:39.563 回答