javascript - 在另一个 AJAX 调用后延迟返回

标签 javascript jquery ajax deferred

我的问题比较直接。

我有一个等待返回的延迟数组,代码是这样的:

var deferreds = [];
for(var i = 0; i < 5; i==){
    deferreds.push(getOneResult(params));
}

var deferreds = [];
for(var i = 0; i < 5; i==){
    deferreds.push(getOneResult(params));
}

“getOneResult”函数如下所示:

function getOneResult(params){
  return $.ajax({
    url: myURL,
    data: params
  });
}

直到有一天我决定让“getOneResult”函数执行另一个 ajax 进程,然后使用这个 ajax 进程的结果来获取结果,它一直运行良好,所以现在我的有问题的代码如下所示:

function getOneResult(params){
  $.ajax({
    url: myOtherURL,
    data: params,

    success: function(){
      var result = arguments;
      return $.ajax({
        url: myURL,
        data: arguments
      });
    }

  });
}

突然间,“deferreds”数组中的所有项目都变成了“undefined”。我确定我正在做的事情听起来不对,但我是否可以在返回延迟之前运行一个 ajax 进程?

最佳答案

尝试返回第二个 promise 。原来的 promise 现在将使用包装的第二个 ajax promise 。

function getOneResult(params){
  return $.ajax({
    url: myOtherURL,
    data: params
  }).then(function() {
    return $.ajax({
      url: myURL,
      data: arguments
    });
  });
}

关于javascript - 在另一个 AJAX 调用后延迟返回,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26538074/

相关文章:

javascript - Angular 的 JQ Lite 函数(triggerHandler 方法)在 Internet Explorer 11 中不起作用

javascript - jQuery 检索和比较文本输入

javascript/jquery 比较日期时间值

javascript - 当元素 id 出现在视口(viewport)中并出现 jquery 时发出警报

php - 使用 AJAX 根据图像映射点击区域编辑 PHP 查询代码

javascript - 如何使用 React/Redux 更新存储中的特定对象?

javascript - ADF Faces 对话框 -dialogListener 未触发

javascript - 从 WordPress 循环中单击链接时添加类

javascript - 如何使用 ajax 推送引擎发出通知?

javascript - 如何在 WordPress 插件中组合 2 个 javascript/jquery 函数