数据表格如何展示总计数,而不只是当前页总数

提问 未结 5 291
Papio
Papio 2019-2-11
悬赏:20飞吻
版本:layui 2.4.5 浏览器:
在当前项目中要求所有数据表格显示总计数,有没有一个一劳永逸的办法?
回帖
  • @Papio 实际目前统计行最大的作用就是给你生成了一个固定在表格底部的tr,目前提供的本页求和如果不满足,就可以在渲染完成回调中将对应的统计行的dom节点给替换成你要的最终结果。大致逻辑如下,
            ,done: function () {
    var tableView = this.elem.next();
    // 遍历统计行的td将最终要的内容替换进去
    var totalRow = tableView.find('.layui-table-total');
    var limit = this.page ? this.page.limit : this.limit;
    layui.each(totalRow.find('td'), function (index, tdElem) {
    tdElem = $(tdElem);
    var text = tdElem.text();
    if (text && !isNaN(text)) {
    text = (parseFloat(text) / limit).toFixed(2);
    tdElem.find('div.layui-table-cell').html(text);
    }
    });
    }
    例子页面: https://sun_zoro.gitee.io/layuitableplug/testTableCheckboxDisabled
    当然了只是一种方案思路,例子的逻辑做得很粗糙,最终的逻辑要自己写,但是思路一样的就是要遍历,可以直接遍历统计行的td去得到当前列的field,也可以通过table.eachCols去遍历表格的cols的配置,然后自己计算出结果再把值设置到统计行对应的td里面去都是可以的
    1 回复
  • 这个可以通过回调对直接操作对应的dom节点
    0 回复
  • Zlheb
    2019-2-11
    0 回复
  • Papio
    2019-2-11
    @岁月小偷 具体怎么操作可以说一下吗?
    0 回复
  • @岁月小偷 怎么实现。具体统计某一列的数据。请指教
    0 回复