[编程笔记] EasyUI显示分组合计行
我们常会有下面这种需求:
表格的底部显示合计,项目用的是EasyUI,实现起来很简单,datagrid初始化时设置showFooter为true,然后后端返回rows时,再同级返回一个footer,比如这种结构:
哪一列需要合计,footer就返回对应的列名,以及对应的值。
不过我遇到一个奇怪的bug,第一张图圈中的三个列分别是:0.00、(空)、40.00,项目里,有的列不需要合计,正常来讲,footer不返回那个列就行了,前端EasyUI就不会再渲染这个列的合计。
但是并非如此,第一个圈中的0.00就是bug,后端不返回这个列的合计了,底部还显示0.00,显然不合理,应该像右侧一样显示(空)。
对比了一下区别后,发现这个金额列,用了公共方法formatAmount,里面默认返回了0.00,影响合计行了。
处理方案:
1、基类JS新增一个方法,默认返回(空)
2、这个不显示合计的金额列使用新增的方法
这样就完成了这个页面的需求,同时不影响其他使用formatAmount的地方。金额列一般是要合计并默认值0.00的,只是当前这种场景不需要0.00,复测了一下,并不影响明细里的显示,明细里还是0.00,是OK的,底部合计不显示0.00就可以了。
项目里脚本封装得太狠了,EasyUI的官方文档写得又潦草,网上的笔记也不多,真的是很无语辣。写点笔记方便以后查阅吧。
PS:转载请注明来源 https://www.cnblogs.com/sunshine-wy,疑问和勘误可在下方留言。