使用唯一变量处理多个AJAX回调

时间:2013-03-27 16:08:05

标签: javascript jquery ajax callback

我正在使用JQuery的AJAX实现来访问多个JSON和不同的URL。我有一个每个URL对应的名称数组,并希望能够在AJAX请求的回调函数中引用与相应JSON文件相对应的相应名称。

到目前为止,我已经编写了一些代码示例用于测试:

    var nameList = ['Tom', 'Neil', 'Jane']; 
    for(var i = 0; i < nameList.length; i++){
        var currentName = nameList[i]; 
        var newURL = urlFromName(currentName)
        $.ajax({
            type: 'GET',
            url: newURL,
            dataype: 'jsonp'
        }).always(function(data,status, error){
               console.log(currentName);
               console.log(data);
           });
    }

代码输出:

      - Neil
      - Object 
      - Neil
      - Object
      - Neil
      - Object

我正在寻找要使用我提供的nameList中相应名称打印出来的每个Object。我该怎么做呢?

1 个答案:

答案 0 :(得分:0)

试试这个:

 var nameList = ['Tom', 'Neil', 'Jane']; 
    for(var i = 0; i < nameList.length; i++){
        var currentName = nameList[i]; 
        var newURL = urlFromName(currentName)
        $.ajax({
            type: 'GET',
            url: newURL,
            dataype: 'jsonp',
            currentName: currentName // <-- Add this here
        }).always(function(data,status, error){
               console.log(this.currentName); // <-- Use the 'this' to get it
               console.log(data);
           });
    }