[2007-01-29发布]ECSide 1.1 rc1: 列表组件eXtremeComponents全面增强版!
请不要再下载此版本
最新 ECSide 1.1 final版本已经发布 请大家访问
http://fins.iteye.com/blog/54265
EC Side介绍:
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
作者: fins ( name: Wei Zijun email:fins@163.com blog:http://fins.iteye.com )
EC Side是一个开源的列表组件。
他源自著名开源列表组件 eXtremeComponents (http://www.extremecomponents.org),
但现在已经脱离eXtremeComponents,独立发展(仍有大量代码来自 eXtremeComponents)。
“做最实用易用的列表组件”是ECSide最终的目标。
ECSide发布地址:
1.1版本: http://fins.iteye.com/blog/51068
1.0版本: http://fins.iteye.com/blog/40190
ECSide圈子:
http://ecside.iteye.com/
ECSide综合讨论专用帖
http://fins.iteye.com/blog/48723
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
主要增强的功能:
1 可设置工具条位置(上 下 或 不显示)
2 可设置工具条内容(显示哪些 不显示哪些)
3 可设置工具条上各个功能按钮的相对位置
4 增加了调整页大小的选择框,并可自定义选择框内的内容
5 增加了带有邻近页面的导航条
6 增加了可跳转到指定页面的跳转框
7 增加了当前选中行高亮
8 为ec:table 增加了 excludeParameters 和 includeParameters 属性,可以实现更快捷简便的“参数保留/不保留”功能
9 可添加自定义的html代码到工具条内 或其他位置
10 可手动调整列宽
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 radio
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特性:可通过简单的配制,快速实现列表数据的展现、查询、修改、删除。
... ...
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
更新日志:
===============================
2007-01-29 15点
ECSide 1.1 RC1 发布
===============================
1 新增easyList特性:可通过简单的配制,快速实现列表数据的展现、查询、修改、删除。
2 为ectable增加全局的“是否可编辑”属性,方便权限控制。 editable="true" or "false"。
3 修正了很多以前没有发现的bug,其中有些是非常严重的bug(但不常见)。
4 优化了一些代码,提升了一点速度,优化的方式主要是减少迭代内部的代码时间复杂度,属于初级优化。
5 将全局行号的取法由${TOTALROWCOUNT}换成了${GLOBALROWCOUNT},更容易理解。
6 为可编辑列表增加了删除功能,具体实现可看相关例子。
7 提供了更多的示例。通过maim.html引导页面进行选择。(其中提供了一个简单的OPOA的例子)
PS:
即使不使用easyList特性,那么也建议更新该版本。
同时请注意依赖包里新加了一个commons-codec-1.3.jar。
关于easyList特性的具体是使用方法,过一阵会推出新的flash教程。
想先尝鲜的可以结合例子以及之前发布的那个新特性的flash看一下。
(flash所在帖: http://www.iteye.com/topic/50261 )
以往更新日志:
(详见 CHANGELOG.txt)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
部分增强功能简介:
(详见 HELP.txt)
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
请阅读一下以下信息,以帮助您了解您要使用的将是一个多么不成熟的东西(但它会有成熟的一天,而且那天不会远 呵呵):
1 ECSide不能和原始版本的 eXtremeComponents 同时使用,且不保证能与原先使用 eXtremeComponents 的系统兼容,请见谅。
2 目前只支持GBK编码的应用,使用其他编码须使用者自行转换,请见谅。
3 目前只在IE6 和FireFox2 上进行过测试,不保证兼容其他(版本)浏览器,请见谅。
4 目前提供的样式风格巨丑无比,请见谅。
5 目前没有完备的文档,请见谅。
6 代码没有注释,没有测试用例,请见谅。
7 没有很好的版本控制,没有构建脚本,请见谅。
8 拥有许多未知的bug,请见谅。
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
其他出色的列表组件(有些是收费的):
eXtremeComponents原始版 ( http://www.extremecomponents.org )
dhtmlXGrid ( http://scbr.com/docs/products/dhtmlxGrid/ )
displaytag ( http://displaytag.sourceforge.net )
nitobi grid ( http://www.nitobi.com/products/grid/ )
ActiveWidgets gird ( http://www.activewidgets.com/grid/ )
rico livegrid ( http://openrico.org/rico/livegrid.page )
首先谢谢 ahau205109 的关注 和提出的中肯的建议和意见 谢谢了:)
下面我来解答一下ahau205109的一些问题:
需求 :
需求3已经实现 需求1 2会想办法实现
问题:
1 删除行功能有 demoOPOA那个例子就有
2 这个问题我没有遇到 能否详细描述一下该bug发生的原因?
3 如果想合理的判断编辑状态,我需要保留原始表格数据,也就是说,每个单元格的数据我都要弄两份,太费资源.
4 子标签绝对没有纯html代码灵活.
我不可能做这样一个子标签:可以通过传入不同的属性来实现所有的html代码的功能.
这种js模板技术其实是很好的,大家可能不太适应,但是带来的灵活易用性绝对要比标签好很多.
再次感谢ahau205109 !!! 谢谢:)
这个解决 pageContext.getAttribute("..."),但是能否直接在column标签
增加colspan,rowspan ?
第3,编辑的时候行列样式的
在编辑模式下,对add,delete,change的记录,是否可以指定不同的样式来展现
对于已经编辑的(某条,非全部)记录,是否可以撤消编辑,对于已经删除的记录,
是否可以恢复; [这些功能应该都比较好实现吧,实现这个目的主要是因为如果记录多,
操作的时候,难免会出错]
第4,查询
昨天看到一个直接在页面查询表格数据,就能将满足的数据高亮显示的功能,感觉还不错
而且你也应该发现了 写字不是我擅长,代码里注释几乎没有
我觉得我说不明白:(
to oaer:
可以调用
limit的getCurrentRowsDisplayed
这个我会在下一个版本里封装一个方法的 否则取得limit还需要一定的编码
这样结果就是点保存时不行。
原因是因为数据没有提交上去。
如
生成的源码如下:
应该生成的源码为 cellName="userinfo.username"。
但是 property="username"处又不能为 property="userinfo.username"
是对的啊
为什么要生成 cellName="userinfo.username" ??
是对的啊
为什么要生成 cellName="userinfo.username" ??
因为这我里的保存数据时:
再加一个标签name,如下:
然后读取数据时根据property去读相应的值。
但生成源码时先看是自定义了name标签。如没有,则默认为property
如有(比如name="userinfo.username"),
则生成源码时按name的值去确定cellName,即:
这样灵活性更大。
否则像我那样的需求就不能满足了 53 楼 shim 2007-02-11 哦,原来是我搞错了。
原来还要自己在Action中
(String[])formMap.get(TableConstants.RECORDKEY_NAME))[0]
取出再赋值,不能自动注入吗