jQuery选择器查找除了给定索引之外的所有行

时间:2010-12-21 16:46:01

标签: jquery jquery-selectors

作为标题,我需要做类似的事情:

$('#myTable').find('td:not(0)'); // all cells except first one

3 个答案:

答案 0 :(得分:9)

你非常接近。只需使用:eq()

$('#myTable').find('td:not(:eq(0))');

答案 1 :(得分:3)

我假设你指的是每个行中的所有单元格,除了第一个单元格。

如果是这样,你可以这样做。

示例: http://jsfiddle.net/PDEfJ/

$('#myTable td:not(:nth-child(1))')

或者你可以这样做,这可能会有所改善:

示例: http://jsfiddle.net/PDEfJ/1/

var result = $('#myTable tr').map(function() {
    return Array.prototype.slice.call( this.cells, 1 );
});

或者这个:

示例: http://jsfiddle.net/PDEfJ/2/

var result = $('#myTable tr').map(function() {
    return $( this.cells ).slice( 1 ).get();
});

答案 2 :(得分:0)

作为替代方案,假设您要选择除第一个以外的所有单元格:

$('#myTable tr').each(
    function() {
        $(this).find('td:gt(0)');
    });

使用:gt() selector

JS Fiddle demo

不可否认,这种方式比其他方法简洁。