我在表格前面加上一行。但是,我的表在顶部有几个 TR,它们具有列名等。当我添加一个新行时,我想在这两个 TR 之后添加它。这是可行的吗?
我正在像这样添加新行:
var newrow = "<tr><td>...</tr></td>";
var grid = $('mygrid');
grid.prepend(newrow); I want this prepend to be after two TR's of the grid
我在表格前面加上一行。但是,我的表在顶部有几个 TR,它们具有列名等。当我添加一个新行时,我想在这两个 TR 之后添加它。这是可行的吗?
我正在像这样添加新行:
var newrow = "<tr><td>...</tr></td>";
var grid = $('mygrid');
grid.prepend(newrow); I want this prepend to be after two TR's of the grid
为什么不将标题包装在 a<thead>
中,将表格主体包装在 a 中,<tbody>
然后您可以将该行作为第一个元素添加到<tbody>
. 这将使您的 jQuery 保持简单,并且您的 HTML 在语义上也更正确。
安东尼,
为什么不使用 thead 和 tbody 标签来分隔您的表头和表体。然后,您可以将行添加到 tbody 的子代。请参阅以下内容。
<table>
<thead>
<tr><th>aaa</th><th>bbb</th></tr>
<tr><th>xxx</th><th>yyy</th></tr>
</thead>
<tbody>
<tr><td>stuff</td><td>things</td></tr>
<tr><td>stuff</td><td>things</td></tr>
</tbody>
<tfoot>
</tfoot>
<table>
问候,
彼得
您可以使用nth-of-type选择器找到 myGrid 的第二行,然后使用 jQuery 的insertAfter()函数在表格的第二行之后添加新行:
$('#mygrid tr:nth-of-type(2)').insertAfter(newRow);
$(newrow).insertAfter("tr:nth-child(2)",grid); //assuming grid is the table