Ajax与外部变量的成功

时间:2013-10-17 13:48:59

标签: javascript jquery ajax scope

如何在Ajax成功中使用外部变量i

例如:

for (i = 0; i < 3; ++i) {

$.ajax({
      type: "POST",
      data: "user=132",
      url: "../php/order_ajax.php",
      success: function(data){
      $('.obj' + i).html(data);
      }                    
});  
}

1 个答案:

答案 0 :(得分:3)

你应该在例如匿名函数中关闭它。这是因为ajax调用是异步的,我敢打赌,即使在第一次ajax调用完成之前,循环也已完成,这意味着&#34; i&#34;届时将是4岁。

var user = 1;
for (i = 0; i < 3; ++i) {
  (function(i){
    $.ajax({
      type: "POST",
      data: "user="+ user,
      url: "../php/order_ajax.php",
      success: function(data){
      $('.obj' + i).html(data);
      }                    
    });  
  })(i);
}