我有一个读取一些JSON数据的脚本:
var tempJson;
$.post("scripts/getJSON.php", function(data) {
tempJson = data;
}, 'json');
alert(""); //First alert
alert("That: " + tempJson); //Second alert
当我包括第一个警报行时,第二个警报给了我一个[Object object]预期的效果。当我省略第一个警报行时,我在第二个警报中收到未定义的消息。为什么?
最佳答案
因为它是异步的,并且在您关闭警报时,ajax已经完成,并且数据已返回并分配给变量。
你应该
var tempJson;
$.post("scripts/getJSON.php", function(data) {
tempJson = data;
alert(tempJson); // or whatever you want to do with the data should go here..
}, 'json');