jQuery .eq()仅适用于表中的第一个元素

时间:2012-11-17 00:46:52

标签: jquery

这仅适用于200行表第一行的第4个元素。

$('.CSSTableGenerator tr td').eq(4)

我如何让它在每4个" td"在表格行?

4 个答案:

答案 0 :(得分:2)

尝试这样

$('.CSSTableGenerator tr td:nth-child(4n)')

jQuery :nth-child() selector

答案 1 :(得分:1)

如果他们都是同一父母的孩子,你可以使用nth-child选择器对其进行过滤http://jsfiddle.net/T36Y8/这似乎是你的情况,因为你确实希望从每个TR开始第4次。

$('.CSSTableGenerator tr td').filter(":nth-child(4n)");

如果他们不是同一父母的所有孩子,您只需传递过滤函数http://jsfiddle.net/T36Y8/1/

$('.CSSTableGenerator tr td').filter(function(index){
    return index % 4 === 0;
})

答案 2 :(得分:0)

$('。CSSTableGenerator tr')。each(function(){$(this).find('td')。each(function(ind){if(ind == 3){//做你的东西这里}})})

答案 3 :(得分:0)

在您的代码中,jQuery过滤掉与过滤规则匹配的所有td,然后获取第4个。

试试这个:

$('td:eq(4)', '.CSSTableGenerator tr')

现在jQuery将过滤器应用于每个上下文,在本例中是tr表中的所有.CSSTableGenerator

来源:http://api.jquery.com/jQuery/#jQuery-selector-context