我是JQuery和Javascript的新手。这是我的代码:
Javascript:
var newRow = '<tr>abc</tr>';
$('#itemTable tr:last').before(newRow);
HTML代码:
<table id='itemTable'>
<tbody>
<tr>zxcv</tr>
</tbody>
<tfoot>
<tr>asdfghjk</tr>
</tfoot>
</table>
如果我在上面添加的新行上面使用Javascript,但我想在最后一个tr之前在tbody中添加新行。如何解决?
谢谢
答案 0 :(得分:2)
首先,您需要了解表格结构html Table
1)找到身体并在最后一个之前追加
var newRow = '<tr><td>abc</td></tr>';
$('#itemTable tbody tr:last').before(newRow);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id='itemTable' border="2px">
<tbody>
<tr>
<td>zxcv</td>
</tr>
</tbody>
<tfoot>
<tr>
<td>asdfghjk</td>
</tr>
</tfoot>
</table>
答案 1 :(得分:1)
所以将它附加到tbody
var newRow = '<tr><td>abc</td></tr>';
$('#itemTable tbody').append(newRow);
如果你想在tbody的最后一行之前,那么选择tbody中的最后一行并插入之前。
$('#itemTable tbody tr').last().before(newRow);
答案 2 :(得分:1)
您可以这样检查:
$('#itemTable tbody tr:last').before(newRow);
答案 3 :(得分:1)
您应该使用td
内的tr
来包含实际值。然后定位tr
内的最后tbody
并使用after()
,如下所示:
var newRow = '<tr><td>abc</td></tr>';
$('#itemTable tbody tr:last').after(newRow);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id='itemTable'>
<tbody>
<tr><td>zxcv</td></tr>
</tbody>
<tfoot>
<tr><td>asdfghjk</td></tr>
</tfoot>
</table>
答案 4 :(得分:1)
你可以试试这个
var newRow = '<tr><td>abc</td></tr>';
$('#itemTable tbody tr:last').before(newRow);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table id='itemTable'>
<tbody>
<tr><td>aaa</td></tr>
<tr><td>CCC</td></tr>
</tbody>
<tfoot>