1

我试图说服.then()执行它的失败条件。

我有以下。请注意,taskID 已替换为 -1 以导致失败。

load: function (taskID) {
    $.when(
        $('#OrderDetails').load('../../csweb/Orders/OrderDetails'),
        $('#TaskDetails').load('../../csweb/Orders/TaskDetails/?taskID=' + -1),
        $('#DeviceDetails').load('../../csweb/Orders/DeviceDetails'),
        $('#Provisioning').load('../../csweb/Orders/Provisioning'),
        $('#Activity').load('../../csweb/Orders/Activity')
    ).then(onDisplayLoadSuccess, onDisplayLoadFailure);
}

var onDisplayLoadSuccess = function () {
    console.log("onDisplayLoadSuccess!");
};

var onDisplayLoadFailure = function () {
    console.log("onDisplayLoadFailure!");
};

在此处输入图像描述

来自.when() 的文档

在将多个 Deferred 对象传递给 jQuery.when 的情况下,该方法从一个新的“主” Deferred 对象返回 Promise,该对象跟踪它已传递的所有 Deferred 的聚合状态。该方法将在所有 Deferred 解析后立即解析其 master Deferred,或者在其中一个 Deferred 被拒绝时拒绝主 Deferred

由于我的一个加载请求失败了——那么不应该执行 onDisplayLoadFailure 吗?

4

0 回答 0