3
我与jQuery的Ajax的工作,但在我来说,我需要存储在全局变量的响应:jQuery.get()变量的作用域
var points = Array()
$.get("/data", {"id": 1}, function(data) {
for (var i=0; i < data.length; i++) {
points[data[i].someid] = data[i];
}
alert(points[22].someid.toString()); // it works fine
});
alert(points[22].someid.toString()); // undefined
然而,当我尝试访问外部的变量点$ .get()的范围我只是得到一个未定义的对象。但是我在$ .get()中获得正确的对象。
在这种情况下管理上下文和范围的最佳方式/标准是什么?
可能的复制http://stackoverflow.com/questions/6009206/what-is-ajax-and-how - 工作 - – Raynos 2011-05-22 01:45:01
我没有时间写出适当的响应,但基本上''.get'回调中的代码可能尚未执行(因此变量未定义),因为它是异步 - 这意味着它可以在脚本继续执行时在稍后未确定的时间点运行。 – 2011-05-22 01:46:02
@Sanchez所以我应该使用**成功**和$ .ajax()来代替? – ccarpenterg 2011-05-22 01:49:56