javascript - jQuery 数据表页脚总和 hh :mm:ss data type column

标签 javascript jquery datatables

我可以获得 INT 列的页脚总计,如下所示:

footerCallback: function ( row, data, start, end, display ) {
        var quantita = this.api(), data;

        // Total over all pages
        total_quantita = quantita
            .column( 5 )
            .data()
            .reduce( function (a, b) {
                return intVal(a) + intVal(b);
            }, 0 );

        // Total over this page
        pageTotal_quantita = quantita
            .column( 5, { page: 'current'} )
            .data()
            .reduce( function (a, b) {
                return intVal(a) + intVal(b);
            }, 0 );

        // Update footer Column "quantita"
        $( quantita.column( 5 ).footer() ).html(
        pageTotal_quantita +' ('+ total_quantita +' total)'
        );

enter image description here

我的问题是:如何获得上面那样的hh:mm:ss 数据类型列的总计? 谢谢!

最佳答案

我已经更新了您的代码,您已经快要完成了,但创建此代码需要花费一些时间:

var table = $('#example').DataTable({
    "footerCallback": function ( row, data, start, end, display ) {
        var api = this.api(), data;
        // Total over all pages
        total_ID = api.column(0).data().reduce( function (a, b) {
            return ~~a + ~~b;
        }, 0 );
        total_Duration = api.column(1).data().reduce( function (a, b) {
            return moment.duration(a).asMilliseconds() + moment.duration(b).asMilliseconds();
        }, 0 );
        // Total over this page
        pageTotal_ID = api.column(0, { page: 'current'} ).data().reduce( function (a, b) {
            return ~~a + ~~b;
        }, 0 );
        pageTotal_Duration = api.column(1, { page: 'current'} ).data().reduce( function (a, b) {
            return moment.duration(a).asMilliseconds() + moment.duration(b).asMilliseconds();
        }, 0 );
        // Update footer Column "quantita"
        $( api.column(0).footer()).html(
            pageTotal_ID + ' ('+ total_ID +' total)'
        );
        $( api.column(1).footer()).html(
            moment.utc(pageTotal_Duration).format("HH:mm:ss") + ' ('+ moment.utc(total_Duration).format("HH:mm:ss") + ' total)'
        );
    }   
});

它似乎适用于有限的示例 I created 。希望有帮助。

关于javascript - jQuery 数据表页脚总和 hh :mm:ss data type column,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37415544/

相关文章:

javascript - 表格行未在 Cordova/Phonegap 中水平显示

ajax - 数据表在 URL 中传递搜索参数,以便我可以通过电子邮件发送链接

javascript - JQuery Datatables 来自 AJAX 源的行数据

javascript - `Object(value)` 和 `value || {}` 哪个效率更高

javascript - 提交时不断加载但不返回数据

javascript - 如何在 AngularJS 中自定义下拉菜单?

javascript - jQuery 不是一个数字

javascript - Google Chrome 扩展 onclick 警报功能错误

javascript - 按键事件中的 undefined variable

datatables - DataTable().ajax.reload() 未定义