riyuetaozi 发表于 2014-8-27 11:20:50

JEECG的列表页面显示带逗号的金额

本帖最后由 riyuetaozi 于 2014-8-27 13:37 编辑

前提: 列表页面使用的是 datagrid标签中的dgcol标签进行显示数据 Eg : <t:dgColtitle="出借金额" field="tranAmountComma"hidden="true" queryMode="single"   width="80"></t:dgCol> 解决办法: 其实有两种方法,方法一(修改标签库,没有测试过,谁测试过的,分享一下哈,在此谢过了!) 方法二:(只测试了这一种,治标不治本,嘿嘿)1,在实体类(自己的实体类)中定义一个显示格式化后的金额字段,2,getter方法上加 @Transient //不让spring扫描,3,在控制器中的datagrid方法(查询执行的方法)中循环遍历并调用格式化方法,存入到字段中 Eg : 实体类写法private String tranAmountComma;//格式化出借金额@Transient//不让spring扫描public String getTranAmountComma() {       return tranAmountComma;}public void setTranAmountComma(String tranAmountComma) {       this.tranAmountComma = tranAmountComma;} Eg : 页面写法 <t:dgColtitle="出借金额" field="tranAmountComma"hidden="true" queryMode="single"   width="80"></t:dgCol> Eg : 控制器写法 //控制器中的重要代码List<InverstTranEntity> list = dataGrid.getResults();InverstTranEntityins = new InverstTranEntity();for(inti=0,j=list.size();i<j;i++){       ins = list.get(i);       ins.setTranAmountComma(insertCommaMoney(ins.getTranAmount().toString()));//格式化出借金额       }TagUtil.datagrid(response, dataGrid); /** * 金额格式化(使用正则表达式) * @param money 要格式化的金额 * @return 返回格式后的金额 */public staticString insertCommaMoney(String money) {    if (money == null) {      return "0.00";    }    NumberFormat formater = null;    double damoney = 0.00;    try {          damoney=Double.parseDouble(money);          formater= new DecimalFormat("#,##0.00#");       } catch(Exception e) {            return "金额出错";       }    return formater.format(damoney);} OK,结束了!

阿刚炖蛋 发表于 2014-8-27 13:35:55

感谢分享,很完整的修改过程~~赞一个:)
页: [1]
查看完整版本: JEECG的列表页面显示带逗号的金额