LigerUI编辑表格组件单元格校验问题
来源:互联网 发布:阿里云华东 2可用区b 编辑:程序博客网 时间:2024/05/12 15:15
这几天在使用LigerUI(版本为1.2.2)编辑表格组件的时候,遇到几个小问题,从官方demo和api中没有找到解决的办法
其中,reRender()函数是从http://www.tuicool.com/articles/ZZnyu2F找到的,新版本没有这个函数,虽然重新设置了单元格的enabledEdit属性为false,但是不知道如何阻止编辑单元格,于是这个问题只能通过变通的方式解决
问题2:单元格校验问题
问题1、从数据库查询出来的主键单元格不可编辑问题
主键单元格已经保存之前编辑的数据,由于是主键,因此一旦保存就不需要再进行修改
找到了一点儿线索,核心代码如下:
onBeforeEdit: function (e){ if (e.record.editTime) { e.record.id.enabledEdit = false; //dataGrid.reRender(); } return true; }
其中,reRender()函数是从http://www.tuicool.com/articles/ZZnyu2F找到的,新版本没有这个函数,虽然重新设置了单元格的enabledEdit属性为false,但是不知道如何阻止编辑单元格,于是这个问题只能通过变通的方式解决
变通的解决方式为,在编辑完成后判断当前记录是否已经保存过,比如已经有保存时间等属性,如果已经保存,就自动恢复成编辑之前的数据,核心代码如下:
onBeforeSubmitEdit: function (e) { //查询出来的数据id不能修改 if (e.column.name == "id" && e.record.editTime) { return false; } }虽然,变通解决了不能修改的问题,但是理想的效果是单元格不可编辑
问题2:单元格校验问题
可编辑的表格,其中的数据有些是需要进行格式、业务校验的,虽然有人在ligerGrid的columns中写了validate属性,但是不知道如何触发其中的校验规则,设置的校验不能触发,肯定是不能起作用的,于是这个问题也需要找个变通的方式解决
变通的解决方式为,在保存之前,对每行的数据进行校验,遍历每行数据的核心代码
function validateGrid() { var rows = dataGrid.rows; for (var i = 0; i < rows.length; i++) { if (rows[i].id.length == 0) { $.ligerDialog.warn("第"+(i+1)+"行[编码]不能为空"); return false; } if (rows[i].name.length == 0) { $.ligerDialog.warn("第"+(i+1)+"行[名称]不能为空"); return false; } } return true; }虽然,解决了数据校验问题,但是校验不通过的单元格,显示效果和校验通过的一样,效果不是很好
LigerUI使用起来比较简单,作者也半年左右升级一次,api虽然已有在线版的http://api.ligerui.com/,但是api函数没有名称排序,找起来不是很方便,有些函数没有在api中体现出来,只能查看源码或者开发工具调试才能找到相关的调用方法,不过还是要赞一个,支持免费、开源的LigerUI
0 0
- LigerUI编辑表格组件单元格校验问题
- ligerui 表格中设置单元格不可编辑,添加行,删除行
- 在JTable单元格上 加入组件,并赋予可编辑能力 [转] 表格(单元格放置组件)
- 表格(单元格放置组件)
- easyui 单元格编辑,下拉表格。。。。
- 在TableViewer中如何给表格的单元格增加其他组件的编辑功能
- ligerui编辑
- 可编辑表格、获取单元格坐标
- SWT的Table表格可编辑单元格
- easyUI datagrid表格 编辑单元格详解
- emap组件,可编辑表格
- Ligerui grid 合并单元格
- 表格单元格换行的问题
- 填报表编辑框数据校验不通过填报单元格值置空
- 填报表编辑框数据校验不通过填报单元格值置空
- vue 封装自定义组件--tabal列表编辑单元格组件
- ligerui 表格合并
- 解决ligerui不校验select表单,以及ie678下不校验所有表单问题
- 未毕业先工作(第一篇)
- 实际用户ID,有效用户ID及设置用户ID
- 数据库关系为多态关联时,适当使用反模式
- Python下pefile的使用
- Mysql Limit操作及优化
- LigerUI编辑表格组件单元格校验问题
- 全表扫描计算成本
- Intent携带数据切换Activity
- C++基本概念
- Log4j-自动发送日志邮件
- 改善java程序的151个建议 读后感三
- java常用类——集合
- 标签语义化,让你的网页更容易懂
- 第7周作业1——背包问题