我有一个包含多个列和多个行的表格。为了简化这一点,我只需要知道有多少行是可计费的(在本例中为第 2 列)。换句话说,第 2 列中有多少行包含文本“y”?无论如何,这是我迄今为止尝试过的:

jQuery

var billable = 0; 
 
// attempt 1 
table.rows().eq(1)( function () { 
    if(table.data() === 'y'){ 
       //priceTotal+=parseInt(table.cell(row,0).data()); 
        alert('This is the billable column, now count which equal "y".') 
        billable++; 
    } 
});   
 
// attempt 2 
column(2).data() === "y"){ 
    alert('This is the billable column, now count which equal "y".') 
    billable++; 
} 

http://jsfiddle.net/s827x/3/

请您参考如下方法:

使用 jquery 我们可以通过父元素中的索引选择元素: :nth-child() ,很简单:

$( ".our-table td:nth-child(2):contains('y')" ).length; 

刚刚添加到 HTML(以防万一):

<tbody class="our-table"> 

并使用 :contains() 选择器,我们选择所有的 <td>在第 2 列中,:contains('y')

演示:http://jsfiddle.net/s827x/6/


评论关闭
IT干货网

微信公众号号:IT虾米 (左侧二维码扫一扫)欢迎添加!

javascript之如何在 Ubuntu 的控制台中设置 slimerjs