Jquery table 求总数

Jquery table get total

我写了一个函数来获取某些行的总数。

函数工作正常,但我有一个问题它不计算 table 更改中 filtered/selected 的行,而是计算所有行。

我不知道这是怎么回事,因为当我查看 html 源代码时,那里只有 5 行,并且函数会计算过滤器之前的所有 25 行。

Jquery :

$("#mainTable").change(function(){  
    var element = $(this),
    footer = element.find('tfoot tr'),
    dataRows = element.find('tbody tr'),
    initialTotal = function () {
        var column, total;
        //for (column = 1; column < footer.children().size(); column++) {
            for (column = 3; column < 4; column++) {

            total = 0;
            dataRows.each(function () {
                var row = $(this);
                total += parseFloat(row.children().eq(column).text());
            });
            footer.children().eq(column).text(total);
        };
    };
    initialTotal();
});

示例页面:

/

正如您在 select "PARTIJ" 0/1/2 时看到的那样,它执行计数函数并给出总计但所有行的总计,而不仅仅是 selected "PARTIJ".

尝试换行:

dataRows = element.find('tbody tr'),

dataRows = element.find('tbody tr:visible'),

应用 :visible selector