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'的就会取整数,而不加的合计取两位小数

两种可以同时存在

相关推荐
沉香亭北几秒前
vueRouter
前端
土豪码农几秒前
面试官:怎么禁止用户复制?
前端·javascript·面试
掘金安东尼1 分钟前
🧭 前端周刊第417期(2025年6月2日–6月8日)
前端·javascript·面试
我是若尘2 分钟前
BEM 规范 :前端 CSS 模块化开发之道
前端
日升2 分钟前
AI 组件库-MateChat 快速起步与核心概念
前端·ai编程·trae
玲小珑4 分钟前
Auto.js 入门指南(八)高级控件与 UI 自动化
android·前端
Java陈序员5 分钟前
再见 Navicat!一款开源的 Web 数据库管理工具!
java·react.js·docker
HarderCoder8 分钟前
ByAI:Rect-redux实现及connect函数
前端·react.js
小张快跑。9 分钟前
【Vue3】(三)vue3中的pinia状态管理、组件通信
前端·javascript·vue.js