jQuery MiniUI

 找回密码
 立即注册
查看: 11381|回复: 11
打印 上一主题 下一主题

gridview.cancelEditRow(row) [复制链接]

Rank: 4

跳转到指定楼层
楼主
发表于 2013-11-14 08:55:50 |只看该作者 |倒序浏览
如题,如果我获得该row中Rowindex,如果为1,我就把改行取消行编辑,如果不是我就可以编辑。望版主给我看一下

Rank: 8Rank: 8

沙发
发表于 2013-11-14 09:38:03 |只看该作者
先获取该行
比如你是通过获取选中来获得的
var row  = grid.getSelected();
var index = grid.indexOf(row);
if(index == 1){
    grid.cancelEditRow(row)
}

Rank: 4

板凳
发表于 2013-11-14 10:16:10 |只看该作者
factory 发表于 2013-11-14 09:38
先获取该行
比如你是通过获取选中来获得的
var row  = grid.getSelected();

斑竹,这个我试验了,不行啊,希望斑竹给我指点指点,要不我把我的代码填上了吗?

Rank: 8Rank: 8

地板
发表于 2013-11-14 10:34:51 |只看该作者
wp260204287 发表于 2013-11-14 10:16
斑竹,这个我试验了,不行啊,希望斑竹给我指点指点,要不我把我的代码填上了吗? ...

你做个简单html页面打包上来,我们看下

Rank: 4

5#
发表于 2013-11-19 18:03:40 |只看该作者
felt 发表于 2013-11-14 10:34
你做个简单html页面打包上来,我们看下

关于行编辑,希望斑竹帮忙看一下啊
附件: 你需要登录才可以下载或查看附件。没有帐号?立即注册

Rank: 8Rank: 8

6#
发表于 2013-11-19 18:46:13 |只看该作者
http://www.miniui.com/demo/#src=datagrid/editable-rowedit.html
看下行编辑的禁止编辑的demo.
grid.on("cellbeginedit", function (e) {
                var row = e.record;
                var editor = e.editor;
              if( grid.indexOf(row) == "1" ){
                editor.setEnabled(false);
               }            
        });

Rank: 8Rank: 8

7#
发表于 2013-11-19 19:02:39 |只看该作者
像你贴的html页面,是单元格编辑啊
直接这样,不就可以了吗。。。。监听oncellbeginedit

    function oncellbeginedit(e) {
        var row=e.row;
        if (dept_grid.indexOf(row)=="1")
            e.cancel=true;
        }

Rank: 4

8#
发表于 2013-11-20 09:27:06 |只看该作者
felt 发表于 2013-11-19 19:02
像你贴的html页面,是单元格编辑啊
直接这样,不就可以了吗。。。。监听oncellbeginedit

首先,谢谢斑竹地回复,我刚才试了一下只有
if (dept_grid.indexOf(row)=="1"){
            e.cancel=true;
        }这个好使
而这样
  if( grid.indexOf(row) == "1" ){
                editor.setEnabled(false);
               }  写不好使,控制不了。我想问一下啊有什么区别啊         

Rank: 8Rank: 8

9#
发表于 2013-11-20 09:35:09 |只看该作者
其实你那个页面是单元格编辑,不是行编辑,所以只要在oncellbeginedit的时候,e.canel=true就可以阻止编辑了。
而下面哪一个,主要是行编辑的时候禁止编辑,其实就是判断条件后把相关的编辑器禁止启用而已。
你可以看下我们两种demo。
http://www.miniui.com/demo/#src=datagrid/editable.html
http://www.miniui.com/demo/#src=datagrid/editable-rowedit.html

Rank: 4

10#
发表于 2013-11-20 09:44:17 |只看该作者
felt 发表于 2013-11-20 09:35
其实你那个页面是单元格编辑,不是行编辑,所以只要在oncellbeginedit的时候,e.canel=true就可以阻止编辑 ...

谢谢斑竹的回复,第二个例子是行编辑啊
但是里面 //在初始编辑的时候,如果性别为男,就不能编辑日期
        grid.on("cellbeginedit", function (e) {
            if (e.field == "birthday") {
                var row = e.record;
                var editor = e.editor;
                var enabled = row.gender == "2" ? true : false;
                editor.setEnabled(enabled);
            }
        });这个是属于单元格编辑吧,但这个为什么管用呢。希望斑竹的指点

Archiver|普加软件

GMT+8, 2025-7-13 12:45 , Processed in 1.026031 second(s), 11 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部