1
 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 ループの最後の繰り返しで設定された値を警告します

4

1 に答える 1

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());
}
于 2013-02-12T23:56:55.233 に答える