我正在进行一些ajax调用,我希望它们中的一些或全部为404.问题是当我得到预期的404时,.done()
不会被执行!我做错了什么?
以下是代码:
$.each(data, function (index, item) {
promises.push(GetReservation(item.UniqueId,
apiRoot,
function (data2) {
//DO stuff
},
function (x, y, z) {
if (x.status == 404) {
//OK!!! i expected that!
}
}));
})
$.when.apply($, promises).done(function () {
setButtons(box, c)
});
答案 0 :(得分:1)
由于$ .when返回承诺,您可以调用始终而不是完成。无论响应成功与否,它都将调用回调。
$.when.apply($, promises).always(function () {
setButtons(box, c)
});