我有一个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