2011-12-25 7 views
3

Я вставляю строки в таблицу через вызов get() на php-страницу, которая работает. Затем я хочу обновить номера строк таблицы.jquery select after get() insert

JQuery обновляет все строки, кроме самого последнего вставленного.

$("#insert_row").click(function() { 
    $.get("print_row.php", function(data){ 
     $("#table").append(data); 
    }); 
}); 

$("#insert_row").on("click", function() { 
    var rowNumber = 1; 
     $(".rowNumColumn").each(function() { 
      $(this).text(rowNumber); 
      rowNumber++; 
     })  
}); 

Я просмотрел сайт на некоторое время в поисках ответа на это, и решение, как представляется, модификаторы живой() или(). Однако я не могу заставить это работать для меня.

ответ

3

Вам необходимо сделать нумерацию в обратном вызове get. Как и сейчас, вы перенумеровываете запрос до возвращения get. get - это просто ярлык для получения запроса ajax. AJAX является асинхронным, поэтому он не дожидается, пока запрос будет возвращен, прежде чем двигаться дальше.

$("#insert_row").click(function() { 
    $.get("print_row.php", function(data){ 
     $("#table").append(data); 

     var rowNumber = 1; 
     $(".rowNumColumn").each(function() { 
      $(this).text(rowNumber); 
      rowNumber++; 
     }) 
    }); 
}); 
+0

Это было, спасибо! –