Как создать подгруппы в таблице с помощью jQuery? - PullRequest
2 голосов
/ 07 января 2010

Я создаю портфель акций. Каждая строка представляет собой запас, и это данные, включая прибыль / убыток. У каждой строки есть groupid, который пользователь может указать. По идее я хочу:

  1. физически сгруппировать строки на основе groupid
  2. после шага # 1 Я хочу динамически добавить строку под этой группой с промежуточной суммой прибыли / убытков только для этой группы.

Таким образом, каждая группа может содержать много строк, и у каждой группы будет одна строка промежуточных итогов, которая суммирует все прибыли / убытки для этой группы. Я просто хочу убедиться, что строка промежуточных итогов всегда находится прямо под последней строкой в ​​этой группе.

Мне нужно будет делать это всякий раз, когда кто-то добавляет новую строку в мою таблицу (я позволяю им динамически добавлять новые строки через пользовательский интерфейс). то есть, если кто-то добавляет новую строку и присваивает ей groupid, равный 3, мне нужно в этот момент прикрепить эту строку с другими строками groupid 3 и включить ее в подсчет промежуточных итогов.

1 Ответ

3 голосов
/ 07 января 2010

Используйте <tbody> элементы для группировки строк таблицы.

<table>
<tbody id="GOOG">
  <tr>...</tr>
  <tr>...</tr>
  <tr>...</tr>
</tbody>
<tbody id="GOOG_subtotal">
  <tr>...</tr>
</tbody>
...
</table>

с:

function append(code, amount) {
  $("<td></td>").text(amoung).wrap("<tr></tr>").appendTo("#" + code);
  var subtotal = $("#" + code + "_subtotal td");
  subtotal.text(subtotal.text() + amount);
}
...