2014-10-14 3 views
0

Я хочу АЯКС массив адресов, как этотAjax с массивами и цикл

var urls = [url1, url2, url3]; 
var ids = [id1, id2, id3]; 

function test() { 
     for(var i = 0 ; i<urls.length; i++){ 
     $.ajax({ 
      url: **urls[i]**, 
      type:'POST', 
      success: function(data){ 
      $('**ids[i]**').html($(data).find('.....').text()); 
      } 
     }); 
     } 
    } 

Для 1 URL я хочу использовать 1 ID бывшие: Идентификаторы [0] = URLs [0] .. ..

+2

И что это ваша проблема? – Regent

ответ

3

Вы не можете получить доступ к i внутри обработчика успеха, потому что это переменная закрытия обновляется в цикле, который даст вам неправильные результаты ...

поэтому попробуйте

var urls = [url1, url2, url3]; 
var ids = [id1, id2, id3]; 

function test() { 
    $.each(urls, function (i, url) { 
     $.ajax({ 
      url: url, 
      type: 'POST', 
      success: function (data) { 
       //make sure the ids has `#` prefix 
       $(ids[i]).html($(data).find('.....').text()); 
      } 
     }); 
    }); 
} 
+0

Большое спасибо! ^) – n1zee

Смежные вопросы