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