使用ajax调用.done发送变量

Sending a variable with ajax call .done

本文关键字:变量 done ajax 调用 使用      更新时间:2024-02-14

是否有可能将变量'sschedule_id[i]'与调用结果一起发送。也可以在数据对象中添加此变量吗?

我的代码:

for (var i = 0; i < schedule_id.length; i++) {
    //Ajax call
    $.ajax({
        url: "http://api.viewer.zmags.com/schedules/" + schedule_id[i] + "?key=" + api_key
    })
    //
    .done(function(data){
}

所以您需要以同步方式进行异步ajax调用,对吗?

因此,您需要创建一个单独的函数,即调用ajax请求,并返回结果并在后续请求中使用。

喜欢:-

for (var i = 0; i < schedule_id.length; i++) {
    var result;
    if (i == 0)
        result = callfunction(0,schedule_id[i]);
    else
        result = callfunction(result,schedule_id[i]);
}
function callfunction(passresult,schedule_id) {
    $.ajax({
        url: "http://api.viewer.zmags.com/schedules/" + schedule_id + "?key=" + api_key
    })
  .done(function (data) {
      return data;
  });
}

构造如下的ajax调用:

$.ajax({
    url: 'http://api.viewer.zmags.com/schedules/',
    type: 'POST' // or GET,
    data: {
        schedule_ids: schedule_id, //array
        key: api_key
    },
    success: function (data) {
        //success callback
    }
});