使用jQuery向表格添加列

23

能否像这样向现有表中添加一个列:

<table id="tutorial" width="600" border="0">
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
  <tr>
    <td>&nbsp;</td>
    <td>&nbsp;</td>
  </tr>
</table>

with js?

4个回答

46

你可以像这样做

 $('#tutorial').find('tr').each(function(){
        $(this).find('td').eq(n).after('<td>new cell added</td>');
   });

您可以将n替换为您想要添加新列的列号。


13
如果您使用以下内容添加标题:$('table').find('tr').each(function(){ $(this).find('th').eq(-1).after('HEADER'); $(this).find('td').eq(-1).after('ROW'); });则会对每个表格的最后一列添加一个标题列和一个行列。 - Camaleo

25

您可以使用.append()将新的td追加到行中。

$('#tutorial tr').append('<td>new</td>')

示例:Fiddle


或者使用prepend()在每行开头添加一个单元格。 - Antony

3
你的意思是列而不是行吗?
$('#tutorial tr').each(function()
{
    $(this).append('<td></td>');
});

该代码选择id为"tutorial"的表格中的<tr>元素,并在其原有内容后面添加新内容。


1
另一个选择是与其他列一起创建带有 display:none; 样式的列,然后使用 方法.Show() 来显示。

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接