layui 表格(table)合计 取整数

第一步

开启合计行

是否开启合计行区域

java 复制代码
table.render({
            elem: '#myTable', 
            url: '../baidui/', 
            page: true, 
            cellMinWidth: 100,
            totalRow:true,
            cols: [
                [ //表头
                    //{ type: 'checkbox' },
                    { type: 'checkbox',totalRowText: "合计" },//合计行区域
                    { field: 'id', align: 'center', title: '编号'},
                    { field: 'phone', align: 'center',title: '手机号码' },
                    { field: 'name', align: 'center',title: '姓名' },
                    { field: 'position', align: 'center',title: '单位' },
                    { field: 'address', align: 'center', title: '地区' },
                    { field: 'detailAddress', align: 'center',title: '详细地址' },
                    { field: 'totalPoint', align: 'center',title: '总积分',totalRow: true },//合计,但是会保留两位小数
                    { field: 'availAmount',align: 'center',title: '可用积分',totalRow:true},
                ]
            ],
            done: function(res){
                if(res && res.code !== 0){
                    layer.msg(res.message);
                }
            }
        });

如果想有的要保留小数额,而有的不保留要去取整数则要修改源码了,配合自定义属性:totalRowType 使用

java 复制代码
table.render({
            elem: '#myTable', 
            url: '../baidui/', 
            page: true, 
            cellMinWidth: 100,
            totalRow:true,
            cols: [
                [ //表头
                    //{ type: 'checkbox' },
                    { type: 'checkbox',totalRowText: "合计" },//合计行区域
                    { field: 'id', align: 'center', title: '编号'},
                    { field: 'phone', align: 'center',title: '手机号码' },
                    { field: 'name', align: 'center',title: '姓名' },
                    { field: 'position', align: 'center',title: '单位' },
                    { field: 'address', align: 'center', title: '地区' },
                    { field: 'detailAddress', align: 'center',title: '详细地址' },
                    { field: 'totalPoint', align: 'center',title: '总积分',totalRow: true },//合计,但是会保留两位小数
                    { field: 'availAmount',align: 'center',title: '可用积分',totalRow:true,totalRowType:'int'},//取整数合计
                ]
            ],
            done: function(res){
                if(res && res.code !== 0){
                    layer.msg(res.message);
                }
            }
        });

修改源码,循环时通过自定义类型,来判断是否四舍五入

java 复制代码
提示:谨慎修改源码
layui table.js 路径 ./static/js/layui/lay/modules/table.js
java 复制代码
var e=t.totalRowText||"",i,type=t.totalRowType||"";if(type==="int")i=parseFloat(a[n]).toFixed(0);else i=parseFloat(a[n]).toFixed(2);return t.totalRow?i||e:e

// 原代码示例:
var e=t.totalRowText||"";return t.totalRow?parseFloat(a[n]).toFixed(2)||e:e

这样加了totalRowType:'int'的就会取整数,而不加的合计取两位小数

两种可以同时存在

相关推荐
橙序员小站1 小时前
Agent Skill 是什么?一文讲透 Agent Skill 的设计与实现
前端·后端
怒放吧德德2 小时前
Netty 4.2 入门指南:从概念到第一个程序
java·后端·netty
雨中飘荡的记忆3 小时前
大流量下库存扣减的数据库瓶颈:Redis分片缓存解决方案
java·redis·后端
炫饭第一名4 小时前
速通Canvas指北🦮——基础入门篇
前端·javascript·程序员
王晓枫4 小时前
flutter接入三方库运行报错:Error running pod install
前端·flutter
符方昊4 小时前
React 19 对比 React 16 新特性解析
前端·react.js
ssshooter4 小时前
又被 Safari 差异坑了:textContent 拿到的值居然没换行?
前端
曲折5 小时前
Cesium-气象要素PNG色斑图叠加
前端·cesium
Forever7_5 小时前
Electron 淘汰!新的桌面端框架 更强大、更轻量化
前端·vue.js
Angelial5 小时前
Vue3 嵌套路由 KeepAlive:动态缓存与反向配置方案
前端·vue.js