我正在尝试使用 $.getJSON
获取 json 数据,它工作正常。
这是我的代码:
$(document).ready(function(){
var MainArray = new Array();
$.getJSON('check-location.php?onload=true', function(result) {
$.each(result, function(i){
MainArray[i] = result[i].CountryName;
});
});
$(".drop-down").append("<div>" + MainArray[0] + "</div>");
});
我试图将它分配给数组供以后使用,但是当我尝试访问它并显示它时,我得到了 undefined
。
我确实获得了所有数据,但是当我将它分配给 MainArray
时,我无法在 $.each
函数之外访问它,我不知道为什么。
最佳答案
那是因为 Ajax 是异步的,您正试图附加一个不存在的值:
$.getJSON('check-location.php?onload=true', function(result) {
$.each(result, function(i){
MainArray[i] = result[i].CountryName;
});
$(".drop-down").append("<div>" + MainArray[0] + "</div>");
});
关于Javascript数组访问外部函数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16700631/