文档章节

jeecg3.5中为dgCol标签增加自定义格式化列中的数值的功能

z_jordon
 z_jordon
发布于 2015/04/22 14:11
字数 407
阅读 3901
收藏 1

jeecg3.5中只有formatter属性,只支持格式化时间格式的数据,不支持自定义格式化列中的值的功能,比如想把列中的的一个int或long型的值除以100转成float或doulbe值,jeecg3.5版本就不支持类似customFormatter这样属性,本文为jeecg3.5增加这个功能,主要修改的代码如下:

org.jeecgframework.tag.core.easyui.DataGridColumnTag

//51行 
private String customFormatter;
//190-192行
public void setCustomFormatter(String customFormatter) {
		this.customFormatter = customFormatter;
	}
//58行
parent.setColumn(title,field,width,rowspan,colspan,align,sortable,checkbox,formatter,hidden,replace,treefield,image,imageSize,query,url,funname,arg,queryMode, dictionary,frozenColumn,extend,style,downloadName,autocomplete,extendParams, customFormatter);

org.jeecgframework.tag.core.easyui.DataGridTag

//257行
String style,String downloadName,boolean isAuto,String extendParams, String customFormater) {
//285行
dataGridColumn.setCustomFormater(customFormater);
//1082-1087行
//自定义格式化数据函数
if (column.getCustomFormater() != null && column.getReplace() == null && column.getDictionary() == null) {
				//如果页面上有replace或distionary属性,则不单独单重自定义函数.
				sb.append(",formatter:function(value,rec,index){");
				sb.append("return ").append(column.getCustomFormater()).append("(value, rec, index);");
				sb.append("}");
			}
//1101-1125行
if (column.getCustomFormater() == null) {
							for(int j = 0; j < value.length; j++){
								sb.append("if(valArray[k] == '" + value[j] + "'){ checkboxValue = checkboxValue + \'" + text[j] + "\' + ','}");
							}
						} else {
							for(int j = 0; j < value.length; j++){
								sb.append("if(valArray[k] == '" + value[j] + "'){ checkboxValue = checkboxValue + ");
								sb.append(column.getCustomFormater()).append("(\'").append(text[j]).append("\') + ','}");
							}
						}
						
						sb.append("}");
						sb.append("return checkboxValue.substring(0,checkboxValue.length-1);");
						sb.append("}");
						sb.append("else{");
						if (column.getCustomFormater() == null) {
							for (int j = 0; j < value.length; j++) {
								testString += "if(value=='" + value[j] + "'){return \'" + text[j] + "\'}";
							}
						} else {
							for (int j = 0; j < value.length; j++) {
								testString += "if(value=='" + value[j] + "'){return ";
								testString += column.getCustomFormater() + "(\'" + text[j] + "\')}";
							}
						}

org.jeecgframework.tag.vo.easyui.DataGridColumn

//39行
private String customFormater;//自定义格式化数据函数
//253-259行
public String getCustomFormater() {
		return customFormater;
	}

	public void setCustomFormater(String customFormater) {
		this.customFormater = customFormater;
	}

WEB-INF/tld/easyui.tld

<!-- 334-338行-->
<attribute>
			<name>customFormatter</name>
			<rtexprvalue>true</rtexprvalue>
			<description>自定义格式分数据函数</description>
		</attribute>


© 著作权归作者所有

共有 人打赏支持
z_jordon
粉丝 35
博文 251
码字总数 78212
作品 0
厦门
技术主管
UI标签库专题二:JEECG智能开发平台Column(列) 子标签

UI标签库专题二:JEECG智能开发平台Column(列) 子标签  1.1. Column(列) 子标签 1.1.1. 示例 <t:dgCol title="年龄" field="age" query="true" extend="{data-options:{required:false,......

Jeecg
2014/06/03
0
0
SylixOS网络数据异步处理原理

一. 网络数据异步处理简介 SylixOS中为了解决网络数据拥堵的问题,采取数据异步处理的方式,提供了网络工作队列。采用网络工作队列,可以使得网卡驱动程序无需阻塞等待处理完成。 SylixOS内核...

时尚小乌龟
2017/11/22
0
0
Excel剪切板:工具用到极致就是神器

图/文 | 安伟星 来源 | 精进Excel Excel中复制粘贴我们都习以为常了,我们复制出来的项目,其实都可以临时存储在一个叫做“剪贴板”的地方,而且Excel剪切板有两大特性: 1、所见即所得:剪切...

安伟星
2017/10/09
0
0
javascript曲线图和面积图Line & Area chart详细介绍

Line & Area chart 控件是一款新型的、可用性极强的曲线图和面积图产品。一个您网站的访问者可以放大他感兴趣的一段区域,打开和关闭数值气球,并可显示和隐藏图表。您能创建简单、堆积、100...

yidongkaifa
2014/06/07
0
1
Javascript散点图气泡图控件Scatter & Bubble chart介绍

Scatter & Bubble chart 控件提供了散点图(XY)和气泡图,使客户可以轻松地在网站上创建出动态的,绚丽的散点图(XY)和气泡图。 具体功能: 时距曲线 缩放 滚动 值可以转换为格式化持续时间...

netkongjian
2014/06/09
0
1

没有更多内容

加载失败,请刷新页面

加载更多

Delphi 常用API 函数(好多都没见过)

AdjustWindowRect 给定一种窗口样式,计算获得目标客户区矩形所需的窗口大小 AnyPopup 判断屏幕上是否存在任何弹出式窗口 ArrangeIconicWindows 排列一个父窗口的最小化子窗口 AttachThread...

dillonxiao
24分钟前
1
0
阿里云ubuntu配置Android开发环境编译Apk

1.命令行下载Android SDK $ wget https://dl.google.com/android/android-sdk_r24.4.1-linux.tgz $ tar zxvf android-sdk_r24.4.1-linux.tgz 2.列出可以现在的SDK ./android list sdk  -a 3......

SuShine
24分钟前
1
0
maven导出项目依赖的jar包

一、导出到默认目录 targed/dependency 从Maven项目中导出项目依赖的jar包:进入工程pom.xml 所在的目录下,执行如下命令: mvn dependency:copy-dependencies 二、导出到自定义目录中 在mav...

来来来来来
25分钟前
1
0
Win10下React Native环境安装教程及错误处理办法(实测)

https://blog.csdn.net/zhangatle/article/details/53289471 准备工作 注意:小米手机MIUI有坑,文末有解决方法 1 首先,你需要先安装Node.js并进行环境变量的配置,具体可以参考我的另一篇文...

james_laughing
25分钟前
1
0
IDEA2018 Mybatis plugin破解

IDEA2018 Mybatis plugin破解 Mybatis Plugin 一、Mybatis Plugin插件是什么 提供Mapper接口与配置文件中对应SQL的导航 编辑XML文件时自动补全 根据Mapper接口, 使用快捷键生成xml文件及SQL...

DemonsI
26分钟前
0
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部