这不是我第一次使用ajax之类的东西,我想使用jQuery函数$ .getJSON
我写了以下内容:
var newIMG;
function random_img(){
$.getJSON('content/random.php',function (data){
newIMG = data;
})
alert(newIMG.ERROR);
}
但是由于某种原因,在发出JSON请求后,我无法访问newIMG变量。
以某种方式将其从$ .getJSON函数传递给random_img()函数也很好(实际上更好)
这真的很奇怪,我不知道这里出了什么问题。
http://i.stack.imgur.com/OShao.jpg
Firebug控制台的屏幕截图,可能会更好地解释。
在此先感谢大家。
最佳答案
这是因为您正在尝试在JSON请求返回之前发出警报(getJSON是异步的),因此当它第一次尝试发出警报时,它是未定义的。
这样将警报移到回调中:
$.getJSON('content/random.php',function (data){
newIMG = data;
alert(newIMG.ERROR);
});