从承诺中获取初始对象

时间:2014-05-06 13:11:53

标签: javascript jquery jquery-deferred

我想访问$ .ajax(ajaxOpts)调用的原始jqXHR对象,这有可能吗?我现在得到的只是一个承诺。

                var jqXHR = $.ajax(ajaxOpts)
                    .done(dfd.resolve)
                    .fail(dfd.reject)
                    .then(next, next);

1 个答案:

答案 0 :(得分:3)

来自docs

  

jQuery 1.5中$ .ajax()返回的jqXHR对象实现了   Promise接口,为它们提供所有属性,方法和   Promise的行为(有关更多信息,请参阅Deferred对象)

您已经获得了一个jqXHR对象(它是XMLHTTPRequest对象的超集)。它只是实现了promise接口。

var jqXHR = $.ajax(ajaxOpts);
console.log(typeof jqXHR.abort);
jqXHR.done(dfd.resolve)
    .fail(dfd.reject)
    .then(next, next);