Я знаю, как добавить или добавить новую строку в таблицу с помощью jquery:
$('#my_table > tbody:last').append(html);
Как вставить строку (заданную в переменной html) в определенный «индекс строки» i
. Так, если, например, i = 3
, строка будет вставлена в таблицу как 4-я строка.
Вы можете использовать .eq()
и .after()
например:
$('#my_table > tbody > tr').eq(i-1).after(html);
Индексы основаны на 0, поэтому 4-я строка, вам нужно i-1
, так как .eq(3)
будет 4-й строкой, вам нужно вернуться к 3-й строке (2
) и вставьте .after()
это.
$('#my_table tbody tr:nth-child(' + i + ')').after(html);
$($('#my_table > tbody:last')[index]).append(html);
Попробуйте это:
var i = 3;
$('#my_table > tbody > tr:eq(' + i + ')').after(html);
или это:
var i = 3;
$('#my_table > tbody > tr').eq( i ).after(html);
или это:
var i = 4;
$('#my_table > tbody > tr:nth-child(' + i + ')').after(html);
все эти поместит строку в ту же позицию. nth-child
использует индекс, основанный на 1.
Используйте селектор eq, чтобы выбрать n-ю строку (начиная с 0) и добавить свою строку после нее, используя after, поэтому:
$('#my_table > tbody:last tr:eq(2)').after(html);
где html — это tr