Questions tagged «.when»

9
将一个Deferreds数组传递给$ .when()
这是正在发生的事情的一个虚构示例:http : //jsfiddle.net/adamjford/YNGcm/20/ HTML: <a href="#">Click me!</a> <div></div> JavaScript: function getSomeDeferredStuff() { var deferreds = []; var i = 1; for (i = 1; i <= 10; i++) { var count = i; deferreds.push( $.post('/echo/html/', { html: "<p>Task #" + count + " complete.", delay: count }).success(function(data) { $("div").append(data); })); …

4
您如何使用jQuery Deferreds数组?
我有一个需要按一定顺序加载数据的应用程序:根URL,然后是架构,然后最终使用各种数据对象的架构和url初始化应用程序。当用户浏览应用程序时,数据对象将被加载,针对架构进行验证并显示。当用户对数据进行CRUD时,这些模式将提供首过验证。 我在初始化时遇到问题。我使用Ajax调用来获取根对象$ .when(),然后创建一个promise数组,每个模式对象一个。这样可行。我在控制台中看到了抓取。 然后,我将看到所有模式的访存,因此每个$ .ajax()调用均有效。fetchschemas()实际上确实返回了一个promise数组。 但是,最后的when()子句永远不会触发,并且“ DONE”一词永远不会出现在控制台上。jquery-1.5的源代码似乎暗示“空”可以作为传递给$ .when.apply()的对象,因为when()将构建内部Deferred()对象来管理列表(如果没有对象的话)通过了。 这使用Futures.js起作用。如果不是这样,应该如何管理jQuery Deferred数组? var fetch_schemas, fetch_root; fetch_schemas = function(schema_urls) { var fetch_one = function(url) { return $.ajax({ url: url, data: {}, contentType: "application/json; charset=utf-8", dataType: "json" }); }; return $.map(schema_urls, fetch_one); }; fetch_root = function() { return $.ajax({ url: BASE_URL, data: {}, contentType: …
By using our site, you acknowledge that you have read and understand our Cookie Policy and Privacy Policy.
Licensed under cc by-sa 3.0 with attribution required.