【转】EC Side分页组件
http://fins.javaeye.com/blog/58216
EC Side介绍:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
作者: fins ( name: Wei Zijun , email:[email protected] , blog:http://fins.javaeye.com )
EC Side是一个开源的列表组件。
他源自著名开源列表组件 eXtremeComponents (http://www.extremecomponents.org),
但现在已经脱离eXtremeComponents,独立发展(仍有大量代码来自 eXtremeComponents)。
“做最实用易用的列表组件”是ECSide最终的目标。
ECSide发布地址:
1.25 版 : http://fins.javaeye.com/blog/58216
1.1 final版: http://fins.javaeye.com/blog/54265
1.1 RC1版: http://fins.javaeye.com/blog/51068
1.0 RC1版: http://fins.javaeye.com/blog/40190
ECSide圈子:
http://ecside.javaeye.com/
ECSide综合讨论专用帖:
http://fins.javaeye.com/blog/48723
============================
EC SIDE CHANGELOG
============================
http://ecside.javaeye.org/
===============================
2007-03-13
ECSide 1.25 发布
===============================
距离上一个版本,发布已经整整过去一个月了,也是放出新版本的时候了。
这么久没有更新原因有2:1是我最近确实太忙了,2是ECSIDE的发展遇到了一些瓶颈。呵呵
不过好在现在新版本终于可以拿出来了。
新功能主要有:
1 增加了escape功能,有了他就可以在一定程度上避免因数据中有特殊字符而带来的麻烦了。
用法:
<ec:column property="aaa" >#_ESCAPE: 你的文本asda1231#[ESC_HTML:${user.USERNAME}]另外一些文本</ec:column>
<ec:column .... value="#_ESCAPE:#[ESC_HTML:${user.USERNAME}]" />
#[ESC_HTML: .... ] 中间的部分是要ESCAPE的 ,有三种方式:ESC_HTML ESC_XML ESC_JS。
可以联合使用,但不能嵌套使用。
例如: #_ESCAPE: asdasd #[ESC_HTML:qqqqqqqqq]另外一些文本 #[ESC_JS:qqqqqqqqq]
如果要ESCAPE的字符中有] 那么请使用 #~ESC_HTML: .... ~ 形式
如果要ESCAPE的字符中有~ 那么请使用 #^ESC_HTML: .... ^ 形式
2 支持打开一个shadowRow时候,关闭其他的shadowRow功能
如果不想使用这个功能,可以在js里设置
ecsideObj为 js初始化的ecside对象。
ecsideObj.autoCloseOtherShadowRow=false;
3 刷新列表的时候,同时刷新当前打开的shadowRow,并且保持打开状态.
4 为ajax翻页 排序 刷新操作增加了 后置js回调。
可以通过指定
ecsdieObj.afterFillForm=函数名
作为回调,例如:
function testC(){
alert(123)
}
ecsdieObj.afterFillForm=testC;
则在执行ajax翻页 排序 刷新操作后,将调用alert(123).
该回调会传入 ajax的response对象.
5 代码做了细节调整,修正了一些缺陷和bug.
6 完善了示例,例如加入了 增加记录的演示,在action中提供了 数据库分页 和非数据库分页两种方法。
非数据库分页 请在 ec:table 内加入 retrieveRowsCallback="process" 属性
7 还有针对论坛中的很多朋友提出的建议和bug,做出了一些细节修改
在这里谢谢大家了。
即使不使用新特性,也强烈建议您升级,因为这一个月下来 1.1版还是暴露了很多的问题。
===============================
2007-02-13
ECSide 1.1 final 发布
===============================
1 展现层代码重写,页面内部的结构进行了调整。
2 表格内部滚动条的js全部重写,提高了性能,改善了对百分比宽度的支持。
3 ec:table增加属性 listWidth,用来指定列表实际宽度(可选项)
(width用来指定显示宽度)
增加属性 hieght用来指定列表显示高度
(之前的版本使用 listHeight,此次全部改为height,但是listHeight还会保留一段时间)
4 增加编组功能。<ec:column group="hide"...
这个只是一个初步的实现,会在以后版本里加强。
5 新增加EasyDataExport特性。
该特性是EasyDataAccess的一个衍生物,也是通过配置来实现导出。
见OPOA的例子。
有一点要主义,它是在DAO层导出,这样可以支持较大的数据量。
6 完善了ECSideFilter过滤器 修正了导出下载时的一个小bug(bug虽小,耗时不少)。
7 一些代码调整和bug修改。
===============================
2007-02-07
ECSide 1.1 RC4 发布
===============================
1 新增加了一个 ec:mapping 标签,作用和ec:column的mappingItem类似,
但是可以脱离ectable单独使用。
2 完善了EcSideFilter过滤器。
3 重构了 easyList和 easyDataAccess相关代码
关于easyList和 easyDataAccess特性,
请参看Help_EasyDataAccess.txt以及easylist的教学录象还有示例。
4 一些细节的调整和bug的修改。
其中的一些bug还是比较严重(虽然出现几率很低)的,强烈建议更新。
在1.2版本之前,功能上基本不会有大变化了。
ECSide 1.1 final的主要改进也将集中在 bug修改 和 js、java代码重构上。
(详见 CHANGELOG.txt)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
主要增强的功能:
1 可设置工具条位置(上 下 或 不显示)
2 可设置工具条内容(显示哪些 不显示哪些)
3 可设置工具条上各个功能按钮的相对位置
4 增加了调整页大小的选择框,并可自定义选择框内的内容
5 增加了带有邻近页面的导航条
6 增加了可跳转到指定页面的跳转框
7 增加了当前选中行高亮
8 为ec:table 增加了 excludeParameters 和 includeParameters 属性,可以实现更快捷简便的“参数保留/不保留”功能
9 可添加自定义的html代码到工具条内 或其他位置
10 可手动调整列宽,可通过js调整列表高度
11 增加了“列表内部滚动条”(实现列表头固定,列表体滚动的功能)
12 为ec:row和ec:column 添加更多的html事件支持,现支持:onmouserover onmouserout onclick ondbclick
13 为ec:table ec:row ec:column增加了自定义扩展属性功能
14 增加 ec:extendrow 标签,实现列表扩展行的功能
15 增加shadowRow(影子行)功能:每行下面可以再加一个子行 这个行里显示什么可以由大家自己定义
16 增加页面变量 ${TOTALROWCOUNT} 用来标示当前纪录在全部记录中的行数
17 增加了打印功能(尚不完善)
18 ec:column属性增加 ellipsis ,实现单元格内数据过长的时候 自动截短并加"..."的功能(ie only)
19 实现了跨列的列表头
20 统计栏的标题格可跨列
21 增加了若干种cell 和 headerCell,例如checkbox radiobox
22 取消了imagePath属性,样式相关的图片信息全部提入css内
23 重(第4声)用了js 和css ,很多功能用js来实现
24 支持了ajax翻页 (可设置 客户端 还是 服务端进行 html代码剪裁 )
25 支持预查询功能,在察看第n页的时候,把n+1页的数据也查询出来(隐藏着)备用,加快查看下一页的速度
26 将导出excel所使用的组件由poi切换成了 jxl
27 xls导出方式修改 原始的导出是导出的vo/map里的原始数值 现在是导出页面实际显示的内容
28 增加简捷导出方式 (通过ec:table的 xlsFileName pdfFileName csvFileName属性)
29 支持pdf简体中文导出。
30 代码进行了大规模的重构
31 增加了很多ajax相关特性
32 实现了可编辑列表功能
33 实现了cell的映射功能
34 easyList、easyDataAccess、easyDataExport特性:可通过简单的配制,快速实现列表数据的展现、查询、修改、删除、导出。
35 支持复杂表头的自定义与导出。
36 支持横向统计。
37 可以对列表内容进行灵活多样的escape。