起步软件技术论坛
搜索
 找回密码
 注册

QQ登录

只需一步,快速开始

查看: 4652|回复: 8

[结贴] grid树形展开问题

[复制链接]

22

主题

72

帖子

254

积分

中级会员

Rank: 3Rank: 3

积分
254
QQ
发表于 2013-7-6 11:58:48 | 显示全部楼层 |阅读模式
本人用的是X5.2.4版本

在bizdata的store-type为grid,is-tree是true的情况下,有一个grid组件引用了这个bizdata
这个grid的multi-selection是多选,appearence是grid,delay 为false
然后有两列展示,其中一列以树形方式展示,在我第一次勾选了父节点之后,子节点相应的展开,但是其对应的子节点前面的checkbox却没有选择,其图如下:
QQ截图20130706114921.png
如果第二次勾选的话,就正常了
这种情况应该如何解决?如果需要自己写方法的话,需要在哪个事件里面写什么样的方法?

109

主题

2907

帖子

1564

积分

金牌会员

Rank: 6Rank: 6

积分
1564
QQ
发表于 2013-7-6 17:10:00 | 显示全部楼层
是这样配置的么?  注意cascade
QQ截图20130706170804.png
回复 支持 反对

使用道具 举报

22

主题

72

帖子

254

积分

中级会员

Rank: 3Rank: 3

积分
254
QQ
 楼主| 发表于 2013-7-6 22:03:54 | 显示全部楼层
吉他爱天涯 发表于 2013-7-6 17:10
是这样配置的么?  注意cascade

就是这样配置的,级联的我配置了
回复 支持 反对

使用道具 举报

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2013-7-8 14:45:52 | 显示全部楼层
怎么操作的,具体步骤写一下
远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

22

主题

72

帖子

254

积分

中级会员

Rank: 3Rank: 3

积分
254
QQ
 楼主| 发表于 2013-7-8 15:14:38 | 显示全部楼层
zhaixin 发表于 2013-7-8 14:45
怎么操作的,具体步骤写一下

第一步:设制一个bizdata data1的store-type为grid,is-tree为true
第二步:设置一个grid grid1的引用为data1,multi-selection为多选,apperence为grid,delay为false
第三步:为这个grid1增加两列code ,name,其中code的type为ro,name的type为tree
第四步:由于我grid1设值了多选,我在grid1的onRowChecked事件中写了js脚本
脚本如下:
mainActivity.gridTreeRowChecked = function(event){
                data.expandRow(event.rowID);
};
此功能是在选择一个节点时,展开它的子节点

现在问题是:第一次加载这个页面的时候(即不存在缓存的时候),选择一个节点(勾上这个节点的复选框),它的子节点会展开,但是相应的不会勾选上。
回复 支持 反对

使用道具 举报

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2013-7-8 15:22:35 | 显示全部楼层
没有重现,这个问题帮你远程看一下,您可以按照签名中的联系方式联系我(等待远程申请)
远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

88

主题

9507

帖子

5135

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
5135
QQ
发表于 2013-7-9 10:29:38 | 显示全部楼层
级联选择只是针对tree处理,所以在appearance设置为grid时,需要自己写代码来勾选子节点
在行展开事件中写如下代码
mainActivity.gridTreeRowExpand = function(event){
        if(event.grid.isCheckedRow_treegrid(event.rowID)){
                var rows = event.grid.getSubItems(event.rowID);
                if(rows){
                        rows = rows.split(",");
                        for(var id in rows){
                                event.grid.setItemChecked(rows[id],true);
                        }
                }
        }               
};
远程的联系方法 QQ 728094812。添加好友时,需要填写论坛账号
发远程时同时也发一下帖子的地址,方便了解要解决的问题

如按照该方法解决,请及时跟帖,便于版主结贴
回复 支持 反对

使用道具 举报

22

主题

72

帖子

254

积分

中级会员

Rank: 3Rank: 3

积分
254
QQ
 楼主| 发表于 2013-7-9 10:39:10 | 显示全部楼层
zhaixin 发表于 2013-7-9 10:29
级联选择只是针对tree处理,所以在appearance设置为grid时,需要自己写代码来勾选子节点
在行展开事件中写 ...

写上这段代码就好了,结贴吧
回复 支持 反对

使用道具 举报

163

主题

561

帖子

1175

积分

金牌会员

Rank: 6Rank: 6

积分
1175
QQ
发表于 2017-4-5 17:25:08 | 显示全部楼层
zhaixin 发表于 2013-7-9 10:29
级联选择只是针对tree处理,所以在appearance设置为grid时,需要自己写代码来勾选子节点
在行展开事件中写 ...

isCheckedRow_treegrid  这个方法里面怎么写的?
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|X3技术论坛|Justep Inc.    

GMT+8, 2024-11-23 08:03 , Processed in 0.144552 second(s), 26 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

快速回复 返回顶部 返回列表