论坛首页 Java企业应用论坛

[2007-01-29发布]ECSide 1.1 rc1: 列表组件eXtremeComponents全面增强版!

浏览 30811 次
精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
作者 正文
   发表时间:2007-02-01  
加入必要的过滤器了吗?
0 请登录后投票
   发表时间:2007-02-02  
哦,可以了,是没加过滤器,不过我看到这样eXtremeExport的名字
以为这个过滤器是用于功能导能的。
0 请登录后投票
   发表时间:2007-02-02  
fins 写道
ahau205109 写道
下列功能什么时候实现呢?
1。锁定列
2。列间移动
3。单元格编辑
   从新的页面选择数据(可参考struts-layout那个表格编辑功能)
可能存在如下问题
1。增加和删除行
   这个我好象没有找到
2。导出的pdf文件格式打开不了
3。保存数据
   只要我双击过单元格就当成编辑 不太合理吧
   保存时能不能提供类似加载标志
4。通过指定模板来实现单元格编辑的内容
   感觉放到column做子标签更明朗


首先谢谢 ahau205109 的关注 和提出的中肯的建议和意见 谢谢了:)
下面我来解答一下ahau205109的一些问题:

需求 :
需求3已经实现  需求1 2会想办法实现
问题:
1 删除行功能有 demoOPOA那个例子就有
2 这个问题我没有遇到 能否详细描述一下该bug发生的原因?
3 如果想合理的判断编辑状态,我需要保留原始表格数据,也就是说,每个单元格的数据我都要弄两份,太费资源.
4 子标签绝对没有纯html代码灵活.
我不可能做这样一个子标签:可以通过传入不同的属性来实现所有的html代码的功能.
这种js模板技术其实是很好的,大家可能不太适应,但是带来的灵活易用性绝对要比标签好很多.


再次感谢ahau205109 !!! 谢谢:)


引用

    2 这个问题我没有遇到 能否详细描述一下该bug发生的原因?
  

这个原因还真不知道,pdf文件是导出了,也没有报错,但打开文件时候就告诉文件已经破坏
引用

  3 如果想合理的判断编辑状态,我需要保留原始表格数据,也就是说,每个单元格的数据我都要弄两份,太费资源.


这个我想不必要弄两份,把click事件改为change事件(不过onchange事件对不同的标签有稍微点不同)
引用

  4 子标签绝对没有纯html代码灵活.


这的确是个人喜好问题;

再提几个问题
用ec,有时候的确很尴尬;
第1不好改那分页的模式;
  还没有具体看ecsice source不知道现在是否支持翻页自定义
  例如  1 2 3 4 5 下一页
第2,如果想对查找到的数据显示做排列调整;比如
<tr><td rowspan="3">内容图片</td><td>one</td></tr>
<tr<td>two</td></tr>
<tr><td>three</td></tr>
还真不知道用ec要怎么用那些标签来实现,本来想找〈ec:table>跌代的时候的
声明的var="*" 里的对象,还没有找到,如果有就解决了;ecside要怎么获取呢?
   这个解决 pageContext.getAttribute("..."),但是能否直接在column标签
  增加colspan,rowspan ?
第3,编辑的时候行列样式的
   在编辑模式下,对add,delete,change的记录,是否可以指定不同的样式来展现
   对于已经编辑的(某条,非全部)记录,是否可以撤消编辑,对于已经删除的记录,
   是否可以恢复; [这些功能应该都比较好实现吧,实现这个目的主要是因为如果记录多,
   操作的时候,难免会出错]
第4,查询
   昨天看到一个直接在页面查询表格数据,就能将满足的数据高亮显示的功能,感觉还不错


0 请登录后投票
   发表时间:2007-02-02  
在struts的action里面怎么读取由页面提交的每页显示的记录数?
0 请登录后投票
   发表时间:2007-02-02  
先回答 ahau205109
"
这个我想不必要弄两份,把click事件改为change事件(不过onchange事件对不同的标签有稍微点不同)
"
这个我想过 但是 如果我从1 该成2 后来后悔了 又改会了1 那同样会被当作已修改的  要想真正做到完美,我想只有备份一份原始数据是最合适的吧
只是个人想法:)
改写你提的建议和 想法 我会考虑实现的
至于一些类似"某某功能如何实现的" 这个确实不好说啊
而且你也应该发现了 写字不是我擅长,代码里注释几乎没有
我觉得我说不明白:(


to oaer:
可以调用
limit的getCurrentRowsDisplayed
这个我会在下一个版本里封装一个方法的 否则取得limit还需要一定的编码
0 请登录后投票
   发表时间:2007-02-02  
关于数据的导出功能我提点建议:
    问题:在一些实际的应用中,表格中显示的内容只是客户最关心的这个对象的重要部分,而在数据导出的时候,可能需要的是这个对象的全部信息。
    建议:在数据导出的时候能不能自定义导出的数据字段。
0 请登录后投票
   发表时间:2007-02-02  
不局限于控件中显示的内容
0 请登录后投票
   发表时间:2007-02-02  
这个是支持的
ec: column有viewsAllowed viewsDenied属性
详细用法请参考ec原版本的官方文档
0 请登录后投票
   发表时间:2007-02-09  
好东西啊
0 请登录后投票
   发表时间:2007-02-10  
想请教一下这样的问题。
我是用Struts2框架
但我不习惯用Model。
Action如下:
import java.util.List;

import org.apache.struts2.ServletActionContext;
import org.shi.oracle.ecside.dao.ManageUsersDao;
import org.shi.oracle.ecside.pojo.UserInfo;

public class ManageUsersAction {
		
	private List<UserInfo> userinfolist;
	private ManageUsersDao manageUsersDao;
	private UserInfo userinfo;
	private int totalRows;
	public String doit(){
	
		userinfolist=manageUsersDao.getAll();
		totalRows=1;
		setToRequest("recordList",userinfolist);
		setToRequest("totalRows",totalRows);
		setToRequest("GENDER_MAP",CommonDictionary.GENDER);
		setToRequest("USERROLE_MAP",CommonDictionary.USERROLE);
		return "success";
	}
	public String save(){
		manageUsersDao.save(userinfo);
		return "saved";
	}
	/*========================================*/
     protected void setToRequest(String name, Object value) {		
		ServletActionContext.getRequest().setAttribute(name,value);
	}

	public List<UserInfo> getUserinfolist() {
		return userinfolist;
	}
	public void setManageUsersDao(ManageUsersDao manageUsersDao) {
		this.manageUsersDao = manageUsersDao;
	}
	public UserInfo getUserinfo() {
		return userinfo;
	}
	public void setUserinfo(UserInfo userinfo) {
		this.userinfo = userinfo;
	}
	
}


JSP中代码如下:

<ec:table items="recordList" var="user" action="./test!doit.do"
title="用户列表" sortable="true" 
xlsFileName="用户列表.xls"
pdfFileName="用户列表.pdf"
toolbarLocation="bottom" 
toolbarContent="navigation|pagejump|pagesize|export|extend|status"

nearPageNum="3"
maxRowsExported="400"

pageSizeList="max:310,10,15,30,50,100,all"

minColWidth="30"
resizeColWidth="true" 

editable="true"
width="680px" 
listHeight="180px"

>
<!-- 
注意第2个column,它实现了 shadowRow。主要是那个EccnUtil.showShadowRow('${ecTableId}',this.parentNode,this) 函数
EccnUtil.showShadowRow( 参数1 最终生成的form的id,省略的话会默认是 ec ; 参数2 当前行; 参数3 事件源)
-->
<!-- recordKey 用来指定 行(每条记录)的唯一标识的值 可以理解为记录的主键 如果是联合主键 可以用类似这个例子中的方法进行拼串 -->
<ec:row recordKey="${user.userid}"  >
	<ec:column width="50" property="_0" title="序号" sortable="false" ><input type="hidden" value="${user.memo}" />${GLOBALROWCOUNT}</ec:column>
	<ec:column width="100" property="username" title="用户名" cellValue="${user.username}"/>
	
<ec:extend location="bottom">
<div style="text-align:center;width:680px;padding:3px">
<button type="button" onclick="saveUserInfo('${ecTableId}');" style="width:120px" ><font color="red">保存</font>列表数据</button>
</div>
</ec:extend>

</ec:table>


这样结果就是点保存时不行。
原因是因为数据没有提交上去。
<ec:column width="100" property="username" title="用户名" cellValue="${user.username}"/>

生成的源码如下:
<td width="100"  cellValue="fins"  cellName="username"   >fins</td>


应该生成的源码为 cellName="userinfo.username"。
但是 property="username"处又不能为 property="userinfo.username"

0 请登录后投票
论坛首页 Java企业应用版

跳转论坛:
Global site tag (gtag.js) - Google Analytics