【发布时间】:2013-11-21 19:23:07
【问题描述】:
我正在尝试将 2 个 $.when.apply() 与 $.ajax 和 $.getJSON 一起使用。我正在尝试将一个嵌入到另一个中,但它似乎不起作用。这是大纲:
var jxhr = [];
var kxhr = [];
$.when($.getJSON('stuff.js', function(cart){
//Grab Stuff
})).then(function(){
for(i<stuff)
{
jxhr.push($.getJSON(array[stuff])
}
$.when.apply($, jxhr).done(function()
{
for(i<array2)
{
kxhr.push($.getJSON(array2[morestuff]))
}
$.when.apply($, kxhr).done(function())
{
//Finish up here.
//Not running.
}
});
}
我从代码中提取了一些语法错误,但结构应该在那里。问题是第二个 $.when.apply() 没有运行。这是限制吗?有没有更好的方法来构建不使用嵌入时间的代码?
【问题讨论】:
-
你真的不应该把第二个
$.when放在第一个之外,否则如果你每次向数组添加一个promise时都调用它,那么使用$.when有什么意义?