在承诺未决时执行延迟的回调

时间:2014-06-04 19:02:01

标签: javascript jquery ajax jquery-deferred

如何在等待jQuery.Deferred的承诺时配置要运行的代码?所以喜欢:

$.when(someAJAX).whatever(function() {
    // run this while the AJAX is loading
}).done(function() {
    // run this when it is done
});

我已经检查了the docs,但什么也没找到,但也许我错过了一些东西(deferred.progress()在这里不起作用。)

1 个答案:

答案 0 :(得分:2)

我认为你想要的东西比你想要的东西简单得多。相反,你可以这样做:

$.when.apply($, arrayOfPromises).done(function() {
    // code here when ajax call is done
});
// this code will execute right after the ajax call was initiated
// put code here to set state while ajax is loading