奇怪的排行问题

时间:2013-07-09 07:58:05

标签: jquery html-table

在我尝试向表格中添加行时,我需要一些帮助。

我有这段代码:

HTML:

 <table class="dataTable" id="CADataTable">
<thead>
    <tr>
        <th> Type</th>
        <th> Name</th>
        <th> Adress</th>
        <th> ID Number</th>
        <th> Contact</th>
        <th> Note</th>
    </tr>   
</thead>
<tbody>
    <tr>        
        <td><input type="text" name="CAType" style="width: 9em;"></td>
        <td><input type="text" name="CAName" style="width: 15em;"></td>
        <td><input type="text" name="CAAdress" style="width: 15em;"></td>
        <td><input type="text" name="CAIdNum" style="width: 6em;"></td>
        <td><input type="text" name="CAContact" style="width: 10em;"></td>
        <td><input type="text" name="CANote" style="width: 15em;"></td>
    </tr>
</tbody>
</table>
<button type="button" id="export" class="button" onClick="test()">ADD</button>

和JQUERY:

test = function(){
       $('#CADataTable tr:last').after('<td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td>');
};

jsfiddle here

第一行正确添加,一切正常,但再次按下按钮后,第二行没有显示我期待的位置。我也试过这个:

$('#CADataTable > tbody:last').append('<td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td>');

没有成功。我确信我错过了一些非常小的东西,但作为一个jquery初学者,我无法发现它。

3 个答案:

答案 0 :(得分:5)

因为您忘记添加tr元素。将<tr></tr>添加到您的jquery代码中。像这样......

$('#CADataTable tr:last').after('<tr><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td></tr>');

答案 1 :(得分:4)

附加到tr而不是tbody

$('#CADataTable tbody tr:last').append

如果你想把它作为一行追加

$('#CADataTable tbody').append('<tr><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td></tr>');

演示------> http://jsfiddle.net/9Ngvk/2/

答案 2 :(得分:1)

<tr>方法中加入after标记。如下所示

$('#CADataTable tr:last').after('<tr><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td><td>test</td></tr>');