我有一個for循環封閉ajax調用,我試圖確定從for循環傳遞索引到回調函數的最佳方法。這是我的代碼:從for循環傳遞索引到ajax回調函數(JavaScript)
var arr = [2001, 2002, 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2010];
for (var i = 0; i < arr.length; i++)
{
$.ajaxSetup({ cache:false })
$.getJSON("NatGeo.jsp", { ZipCode: arr[i], Radius:
document.getElementById("radius").value, sensor: false },
function(data)
{
DrawZip(data, arr[i]);
}
);
}
當前,由於異步ajax調用,只傳遞arr數組的最後一個值。除了同步運行ajax調用之外,如何將arr數組的每次迭代傳遞給回調函數?
雖然這是大約一個重複[30其他問題](http://stackoverflow.com/questions/tagged/javascript+closures+loops),在循環中使用函數時,這是一個非常常見的問題,我希望你不會介意修改其中的一個標籤推數量達到31 :) – Anurag 2011-05-20 20:50:16