layui 表格(table)合计 取整数

第一步

开启合计行
layui 表格(table)合计 取整数_第1张图片

是否开启合计行区域

layui 表格(table)合计 取整数_第2张图片

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 使用

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);
                }
            }
        });

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

提示:谨慎修改源码
layui table.js 路径 ./static/js/layui/lay/modules/table.js
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’的就会取整数,而不加的合计取两位小数
两种可以同时存在

你可能感兴趣的:(为你撰写的故事,layui,java,前端)