jQuery MiniUI

标题: Grid行编辑模式下的一些问题 [打印本页]

作者: jipinkuang    时间: 2013-10-22 16:33:59     标题: Grid行编辑模式下的一些问题

1. 如何在点击一个编辑按钮后,开启表格的allowCellEdit属性
2. 如何判断当前行是新建还是新增, 目的主要是设置一列在编辑模式下不能修改,在新增模式下可以

作者: factory    时间: 2013-10-22 16:46:29

1.grid.setAllowCellEdit(true/false)

2.新增的,当你获取该行的时候,会有个_state:"added"属性

比如你数据是这样的{id:"1",name:"xxx",age:"23",_state:"added"}
判断_state是否为added来确实该行数据是否为新增
作者: jipinkuang    时间: 2013-10-22 22:42:12

本帖最后由 jipinkuang 于 2013-10-23 08:06 编辑
factory 发表于 2013-10-22 16:46
1.grid.setAllowCellEdit(true/false)

2.新增的,当你获取该行的时候,会有个_state:"added"属性

1 如何在新增时,没有完成新增行的必填内容,不能再增加行,2 如何在新增行后,自动定位到新增行的单元格
3 如何使用一个取消按钮,可以清除掉没有进行保存的操作,已经新建的行,grid.cancelEdit()没有起作用,
4 grid.isEditing()为什么一直是false,

5 grid.validate 如何进行唯一性验证



作者: factory    时间: 2013-10-23 09:20:12

jipinkuang 发表于 2013-10-22 22:42
1 如何在新增时,没有完成新增行的必填内容,不能再增加行,2 如何在新增行后,自动定位到新增行的单元格
3 ...

1.参考:http://www.miniui.com/demo/#src=datagrid/cellvalidation.html
每次在新增新行之前,都进行下表格验证,有不通过的,就不执行新增代码

2.grid.setCurrentCell(cell)  cel=[row,column]
grid.beginEditCell();

3.  var data = grid.getData()
获取当前页的数据,然后循环下,把你需要删除的行grid.removeRow(row)或者grid.removeRows(rows)

4.单元格编辑状态下,行编辑API失效,反之亦然
5.唯一性验证需要你自己判断,我们没有提供标准的唯一性验证规则
作者: jipinkuang    时间: 2013-10-23 09:31:38

本帖最后由 jipinkuang 于 2013-10-23 09:33 编辑

if(grid.isValid()) {
                  var newRow = {};
          grid.addRow(newRow, 0);
                  grid.setAllowCellEdit(true)
                  };

还是可以继续新增行,请问哪里应该被修改
作者: factory    时间: 2013-10-23 10:07:24

本帖最后由 factory 于 2013-10-23 10:08 编辑
jipinkuang 发表于 2013-10-23 09:31
if(grid.isValid()) {
                  var newRow = {};
          grid.addRow(newRow, 0);

你看你的grid.isvalid()为什么被通过了,你试试在表格执行grid.validate()之前,执行下grid.commitEdit()

作者: jipinkuang    时间: 2013-10-23 10:15:08

grid.commitEdit();
if(grid.isValid()) {
  var newRow = {};
  grid.addRow(newRow, 0);
  grid.setCurrentCell(1);
  grid.setAllowCellEdit(true);
};

尝试过的
作者: factory    时间: 2013-10-23 10:21:39

jipinkuang 发表于 2013-10-23 10:15
grid.commitEdit();
if(grid.isValid()) {
  var newRow = {};

grid.validate()呢??
你都没让表格进行验证啊




欢迎光临 jQuery MiniUI (http://miniui.com/discuss/) Powered by Discuz! X2