jQuery MiniUI

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

求可以动态控制列输入的方法 [复制链接]

Rank: 3Rank: 3

跳转到指定楼层
楼主
发表于 2013-9-2 09:53:36 |只看该作者 |倒序浏览
我在datagrid中设置了列标示的字段,用来控制另一个字段。0为可输入,1为不可输入可见,2为不可输入不可见。
比如BZ字段,就有个BZBS用来控制BZ是否可输入或者可见。想问一下有什么方法可以实现吗?

Rank: 3Rank: 3

沙发
发表于 2013-9-2 11:39:44 |只看该作者
求回复啊~~

Rank: 8Rank: 8

板凳
发表于 2013-9-2 11:41:09 |只看该作者
监听oncellbeginedit事件
var value = e.row.bzbs    // 获取bzbs的值

if(e.field == "bz"){      //如果正在编辑的是bz单元格
    if(value == 1 || value==2){     //1和2都不允许输入
         e.cancel == true;
    }
}

下面是控制bz列是否可见的
监听oncellendedit  编辑完成事件
var field = e.field
var value = e.value
if(field == "bzbs"){   //当编辑bzbs的时候控制bz列是否可见
     if(value == "2"){
           grid.hideColumn("bz列的name")   //隐藏bz列
     }
}

Rank: 3Rank: 3

地板
发表于 2013-9-2 12:01:47 |只看该作者
factory 发表于 2013-9-2 11:41
监听oncellbeginedit事件
var value = e.row.bzbs    // 获取bzbs的值

明白了,可是我现在的标识列是隐藏的,而且标识列的值不固定,有的是1,有的是2,也就是说,每一行都是不一样的,这样会不会把一整列都控制死呢?而且如果按这个方法,只能是在点击列开始编辑的时候才触发,比如隐藏的属性应该是在数据绑定的时候就设置好的。我怎么样在数据绑定的时候就控制住呢?

Rank: 8Rank: 8

5#
发表于 2013-9-2 14:12:58 |只看该作者
leap_icy 发表于 2013-9-2 12:01
明白了,可是我现在的标识列是隐藏的,而且标识列的值不固定,有的是1,有的是2,也就是说,每一行都是不 ...

这个只能去根据你的数据来处理了,你可以去遍历你的数据,来找到哪些列是需要隐藏的,然后再隐藏掉。
或者就是动态的去生成列,设置列的visible:false 就是隐藏的

动态生成列参考:http://www.miniui.com/demo/#src=datagrid/setcolumns.html

Archiver|普加软件

GMT+8, 2024-9-23 04:20 , Processed in 1.048097 second(s), 9 queries .

Powered by Discuz! X2

© 2001-2011 Comsenz Inc.

回顶部