Найти последний ТР (группа) - PullRequest
2 голосов
/ 09 ноября 2009

у меня есть таблица ниже

<tr id="group_1>...</tr>
   <tr id="el">...</tr>
   <tr id="el">...<tr>
<tr id="group_2"></tr>
   <tr id="el">...</tr>
<tr id="group_1>...</tr>
   <tr id="el">...</tr>
   <tr id="el">...<tr>

Мне нужно найти последний TR каждой группы

$("tr#group_"+groupID).next("tr#el:last").after("ADD NEW TR");

Это не работает для меня !!

Полагаю, это потому, что я использую для всех групп один и тот же идентификатор.

Может ли кто-нибудь мне помочь.

Спасибо

Ответы [ 3 ]

6 голосов
/ 09 ноября 2009

Ну, во-первых, идентификаторы должны быть уникальными, поэтому поведение будет неопределенным в приведенном выше случае.

Во-вторых, это сложный способ группировки строк. Попробуйте вместо этого использовать элементы TBODY>

<tbody id="group_2">
  <tr>...</tr>
  <tr>...<tr>
</tbody>
<tbody id="group_2">
  <tr>...</tr>
</tbody>
<tbody id="group_3">
  <tr>...</tr>
  <tr>...<tr>
</tbody>

и тогда все станет намного проще:

$("#group_" + groupNum + " tr:last-child").after("add new tr");

Дело в том, что вам даже не нужно делать это таким образом (используя after()). Проще сделать это, используя append():

$("#group_" + groupNum).append("add new tr");
1 голос
/ 09 ноября 2009

ID должны быть уникальными на данной странице. Вам также не нужно указывать тег при идентификации элемента по идентификатору, поскольку идентификаторы уникальны.

Более простая форма (как только вы избавитесь от этих повторяющихся идентификаторов) будет:

$("#group_"+groupID).children("tr:last").after("ADD NEW TR");
1 голос
/ 09 ноября 2009

Вы не можете повторно использовать такие идентификаторы. Попробуйте вместо этого изменить классы.

Возможно, стоит добавить туда <tbody>:

<tr id="group_1>...</tr>
<tbody id="group_1_tbody">
   <tr class="el">...</tr>
   <tr class="el">...<tr>
</tbody>
<tr id="group_2"></tr>
<tbody id="group_2_tbody">
   <tr class="el">...</tr>
</tbody>

Тогда вы могли бы сделать

$('group_' + groupID + '_tbody tr:last')

или даже проще:

$('group_' + groupID + '_tbody').append('NEW TR')
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...