如何使用特定列而不使用jQuery迭代每一行

时间:2014-09-30 22:07:31

标签: jquery html

我找到了在特定位置使用jQuery添加列的答案,使用如下语法:

    $('table').find('tr').each(function(){
        $(this).find('td').eq(0).after('<td>cell 1a</td>');
    });

但我想做的是为第一行和最后一行插入一列,而不是通过eac行迭代:

$('table').find('tr').eq(0).magic(function() {
     $(this).find('td:last').after('<td>foo</td>');
});

我该怎么做呢,用jQuery替换magic

使用$('table').find('tr').eq(0).find("td:last").after('<td>foo</td>');可以正常编辑特定行。所以看起来问题就在我的代码中的其他地方。

2 个答案:

答案 0 :(得分:1)

必须迭代每一行才能添加一列,因为这就是表的工作方式。您可以使用更多的选择器功能并执行以下操作:

$('table tr').find("td:last").after('<td>foo</td>');

工作演示:http://jsfiddle.net/jfriend00/3zfwrg8p/


或者,使用.append()(因为您要在行末添加):

$('table tr').append('<td>foo</td>');

工作演示:http://jsfiddle.net/jfriend00/osbn218w/

答案 1 :(得分:0)

您可以使用追加,它会在选择器的末尾添加td

$('table').find('tr').each(function(){
    $(this).append('<td>and a </td>');
});

这里是jsfiddle