• 如果您觉得本站非常有看点,那么赶紧使用Ctrl+D 收藏吧

回调返回一个Ajax数组不工作?

jquery-ui 来源:Yetimwork Beyene 5次浏览

回调总是空回调返回一个Ajax数组不工作?

// calling the function 
var returnArray = getArrayData(fileName, function(data) { 
    return data; 
}) 
alert(returnArray); // output says undefined 

function getArrayData(fileName, callback) { 
    var arrayData = []; 
    $.getJSON("sendRequestFile", { 
     fileContent: fileName 
    }, function(data) { 
     $.each(data, function(index, value) { 
      if (value === "false") {} else if (value === "") {} else { 
       arrayData[index] = value; 
      } 
     }); 
     alert(arrayData); // see data without no problems 
    }); 
    alert(arrayData); // empty 
    callback(arrayData); // undefined 
}​ 


===========解决方案如下:

阿贾克斯是异步的,完整的回调中运行的回调。

$.getJSON("sendRequestFile", { 
    fileContent: fileName 
}, function(data) { 
    $.each(data, function(index, value) { 
     if (value === "false") {} else if (value === "") {} else { 
      arrayData[index] = value; 
     } 
    }); 
    callback(arrayData); // worky 
}); 
//alert(arrayData); // empty 
//callback(arrayData); // undefined​ 

版权声明:本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系管理员进行删除。
喜欢 (0)