结合延期回复
是否有可能,当使用jQuery Deferred的$.when
将响应组合到一个数组中时?
var promise = $.when( ajaxRequest1, ajaxRequest2 ); promise.done(callback);
“回调”函数看起来像function callback(resp, options)
。 请注意它只接受一个响应。
我认为以下可能有用,但没有。
var promise = $.when( ajaxRequest1, ajaxRequest2 ); promise.then(function(resp1, resp2) { return [resp1, resp2]; });
问题是jQuery使用3个参数解析了它的ajax promise,当你在多个promise上使用$.when
时,它们会成为一个值数组。 要仅获取data
(每个ajax回调的第一个参数),请使用
var promise = $.when( ajaxRequest1, ajaxRequest2 ).then(function(resp1, resp2) { return [resp1[0], resp2[0]]; });