1

我在表格前面加上一行。但是,我的表在顶部有几个 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
4

4 回答 4

4

为什么不将标题包装在 a<thead>中,将表格主体包装在 a 中,<tbody>然后您可以将该行作为第一个元素添加到<tbody>. 这将使您的 jQuery 保持简单,并且您的 HTML 在语义上也更正确。

于 2013-08-12T15:38:13.040 回答
0

安东尼,

为什么不使用 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>

问候,

彼得

于 2013-08-12T15:42:50.520 回答
0

您可以使用nth-of-type选择器找到 myGrid 的第二行,然后使用 jQuery 的insertAfter()函数在表格的第二行之后添加新行:

$('#mygrid tr:nth-of-type(2)').insertAfter(newRow);
于 2013-08-12T15:36:53.953 回答
0
$(newrow).insertAfter("tr:nth-child(2)",grid); //assuming grid is the table
于 2013-08-12T15:36:59.923 回答