jquery-deferred相关内容
我正在使用$.when在其他一些逻辑之前运行2个函数.现在,在某些情况下,在执行相同逻辑之前,我需要运行一组不同的函数,因此我想将一组函数传递给$.when,但无法使其运行. 类似的东西: function funcA(){ console.log("funcA"); } function funcB(){ console.log("funcB") } var func
..
在等待多个延迟的对象完成时,为什么这样做: $.when(tasks).then(function() { document.write("Completed all requests." + "
"); }); 立即执行 $.when.apply(null, tasks).then(function () { document.write("Complet
..
我有一连串的ajax请求,它们支持一系列级联的下拉选择列表.当您在第一个下拉列表中选择一个值时,将触发一个请求以填充第二个,完成后(下拉列表已填充),下一个请求将触发以填充第三个下拉列表,依此类推. 这些请求链的形成方式有些变化,所以我希望使用jQuery Deferred对象组装请求. 我知道如何将第二个请求链接到第一个请求,但是我看不到如何将第三个请求链接到第二个. func
..
我可以这样声明一个jQuery AJAX调用: var foo = $.ajax({ ... }); 但是实际上可以正确地执行该请求,对吗? 如何先声明AJAX调用而不先执行它,然后再调用它?像这样: var foo = $.ajax({ ... }); // some stuff in between foo.execute(); 谢谢. 编辑 更多信息:我真正
..
$.何时行为取决于是否将一个或多个Deferred对象传递给它.此行为已在文档中进行了记录-但问题是它迫使我编写了两个不同的代码路径. function foo (dfds) { $.when.apply(this, dfds).done(function() { console.log(arguments); }); } 案例1: foo([$.g
..
让我们说您有一种情况需要在页面的文本区域中创建.csv输出... 所以我有一个循环查询的数组.在循环中,im将查询传递给ajax调用...我需要将ajax调用的结果附加到textarea中. 我的问题是如何按照请求的顺序(基本上是查询数组中的顺序)将结果打印出来 //example array to loop. var queries= ['query1', 'query', '
..
我最近问了一个有关for循环中延迟的jquery行为的问题. 在此处链接 我收到了有效的答案,但我不明白为什么会起作用. 如果我有以下代码: function update(callbacks) { return $.Deferred(function(dfr) { setTimeout(function() { callbacks
..
我对Promise的定义如下: myFunc = function() { $.getJSON("./rest/api/some/url", function(json, textStatus) { console.log("AJAX call hit!"); }); }; $.when(myFunc()).then(function() { cons
..
基本上,我很想写这个: var async1 = $.when( a1() ).then(function(){ a2() }); var async2 = $.when( a3() ).then(function(){ a4() }); $.when(async1, async2).then(function(){ console.log("complete"); });
..
自从使用$.Deferred以来,我已经遇到过几次这种情况:我有一个值列表,每个值都以某种方式产生一个Deferred Object,我想在所有Deferred Objects被解析后执行一个回调. 一个更具体的例子是这样的: var urls = [ 'foo.com', 'bar.com', 'baz.com', 'qux.com' ], defers = [], defe
..
像这样读取JSON服务: $.ajax({ url:'activeIDs', success : function(data){ // data = [14,15] var tableRows = []; for (var dataIndex=0; dataIndex
..
我有一个带有单个参数的函数.我需要能够判断此参数是jQuery Promise还是Deferred对象.如果不是,则该值可以是任何类型且具有任何属性,因此仅凭promise方法并不安全. 这是我希望函数运行的一个示例: function displayMessage(message) { if (message is a Promise or Deferred) { mes
..
我一直在阅读有关jQuery中的递延和承诺的信息,但我还没有使用它. 除了方法管道外,我对所有内容都非常了解.我真的不明白它是什么. 能否请一些人帮我了解它的作用以及在哪里使用? 我知道有一个标题与此标题完全相同的问题(此处)但事实并非如此.我正在寻求帮助以了解它和一些示例.另一个问题的目的是弄清为什么它在特定情况下不起作用. 解决方案 基本上, Deferred.pip
..
我有一个现有项目,该项目具有许多返回诺言的异步函数.我要添加一些缓存,以便在某些情况下异步功能可以同步完成,并希望使此代码更短/更好: return $.Deferred(function(def) { def.resolve(); }).promise(); 例如,我有一个Data Service类,该类处理大多数如下所示的AJAX请求: function Dat
..
使用jQuery,我知道我可以使用$.when()等待所有乘法Deferred被解决. (或者第一个被拒绝.) 但是有没有一种简单的方法可以触发多个Deferred,然后等待第一个得到解决? 例如,我想尝试使用两个类似的AJAX Web服务,或者它们可能宕机或运行缓慢,然后再处理其中一个首先答复的内容.然后我可能会使用第三个Deferred进行超时. 解决方案 基于凯文B的代码
..
我正在获取预定义的值,我必须将它们插入两个选择中:
1 2 3
..
我的代码:
..
当我有数量不定的ajax请求时,如何使用延迟请求来调用它们? 我的猜测: //qty_of_gets = 3; function getHTML(productID, qty_of_gets){ var dfd = $.Deferred(), i = 0, c = 0; //this is where there c
..
jQuery具有Deferred API的一个不错的功能,$.wait()用于处理多个Deferred s/Promise s.它在以下情况下返回: 所有 已resolve() d 或 Deferred个中的一个已被reject() 大多数情况下这是您想要的,但是有时您想知道所有何时完成. 是否有一种简单或优雅的方法来执行类似$.wait()的操作,但是仅当所有Def
..
我想在循环中调用jQuery延迟函数,但每次迭代都应等待使用延迟when() 的上一次迭代完成 function (num_of_iterations) { var arr = []; for (var i = 1; i
..