如何将自定义数据传递/访问到ajax成功处理程序

时间:2013-02-12 23:53:48

标签: jquery

 for(var i =0; i < featuredItems.length; i++) {
    var item = featuredItems.eq(i).text().trim();
    alert(item); // alerts correctly
    $.ajax({
      url : "/documents/ajax/" + item,
      dataType : "text",
      success : function(data) {
        /*
          alerts the value set in the last iteration of for loop.
          I want the same value as value of item in the ajax request URL
        */
        alert (item);     
      },
    });
  }

如何在成功处理程序中正确访问var项的值?

上面的代码警告 for loop

最后一次迭代中设置的值

1 个答案:

答案 0 :(得分:0)

您必须关闭item值:

for(var i =0; i < featuredItems.length; i++) {
    void function(item) {
        $.ajax({
          url : "/documents/ajax/" + item,
          dataType : "text",
          success : function(data) {
            alert (item);     
          },
        });
    }(featuredItems.eq(i).text().trim());
}