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

QQ登录

只需一步,快速开始

查看: 16046|回复: 18

[处理中3] 如何让tree选中指定的多行

[复制链接]

86

主题

407

帖子

1138

积分

金牌会员

Rank: 6Rank: 6

积分
1138
QQ
发表于 2018-7-27 09:31:10 | 显示全部楼层 |阅读模式
版本: BeX5V3.4 小版本号:
数据库: MySQL 服务器操作系统: Windows 应用服务器: Tomcat
客户端操作系统: Windows 其它 浏览器: Chrome
如何进行树多选的时候,选中父级的时候,只选中父级的子集,子级的子级不选中

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-7-27 10:03:55 | 显示全部楼层
父取消选择的时候,子还有处理吗?
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

86

主题

407

帖子

1138

积分

金牌会员

Rank: 6Rank: 6

积分
1138
QQ
 楼主| 发表于 2018-7-27 10:12:01 | 显示全部楼层
jishuang 发表于 2018-7-27 10:03
父取消选择的时候,子还有处理吗?

父级取消的时候,子级不处理,我通过过滤数据得到想要的数据,想把这些数据都选中,设置怎么没有效果呀
        Model.prototype.treeGridRowClick = function(event){debugger;
                var  queryLocation = this.comp("queryLocation");
                var  dialogData = this.comp("dialogData");
                var treeGrid = this.comp("treeGrid");
               
                var rowid = dialogData.getCurrentRowID();
//                alert(rowid);
                var locationName = dialogData.getValue("locationName");
                var locationCode = dialogData.getValue("locationCode");

                var parent = dialogData.getValue("parent");
                queryLocation.setFilter("filter11","ZH_EquipmentLocation.parent='"+locationCode+"'");
                queryLocation.refreshData();
                queryLocation.each(function(p) {debugger;
                        var row = p.row;
                        var rowID = row.getID();
                        treeGrid.setRowChecked=true;
                        treeGrid.setHeadCheckBox=true;
//                        treeGrid.setRowChecked(row,true);
//                        treeGrid.setItemChecked(rowid, true);
//                        dialogData.setRowChecked(row,true);
//                        dialogData.grid.setItemChecked(rowid, true);
                });
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-7-27 10:25:04 | 显示全部楼层
那就自己在data上定义一个关系,关系的值用来区分是勾选选中的,还是代码选中的
自己在代码选择的时候给关系赋值

然后自己自己选择的事件中判断是代码选中的就不查找对应的子数据进行勾选,在取消勾选的时候自己在把值还原
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

86

主题

407

帖子

1138

积分

金牌会员

Rank: 6Rank: 6

积分
1138
QQ
 楼主| 发表于 2018-7-27 10:32:56 | 显示全部楼层
jishuang 发表于 2018-7-27 10:25
那就自己在data上定义一个关系,关系的值用来区分是勾选选中的,还是代码选中的
自己在代码选择的时候给关 ...

如果父级取消,子级也取消呢?怎么用代码实现
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-7-27 11:18:02 | 显示全部楼层
勾选一样的思路,自己用值去控制判断
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

86

主题

407

帖子

1138

积分

金牌会员

Rank: 6Rank: 6

积分
1138
QQ
 楼主| 发表于 2018-7-27 11:23:23 | 显示全部楼层
jishuang 发表于 2018-7-27 11:18
勾选一样的思路,自己用值去控制判断

发现一个问题,如果树展开了,设置选中的话可以选中,如果树折叠了,设置选中选中不了
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-7-27 11:40:40 | 显示全部楼层
树是延迟加载的,没有展开子节点就没有选择肯定不能选择
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

86

主题

407

帖子

1138

积分

金牌会员

Rank: 6Rank: 6

积分
1138
QQ
 楼主| 发表于 2018-7-27 12:47:00 | 显示全部楼层
jishuang 发表于 2018-7-27 11:40
树是延迟加载的,没有展开子节点就没有选择肯定不能选择

怎么判断当前行是否选中呀?
回复 支持 反对

使用道具 举报

91

主题

13万

帖子

3万

积分

管理员

Rank: 9Rank: 9Rank: 9

积分
36198
发表于 2018-7-27 13:44:46 | 显示全部楼层
grid上提供的获取选择中的API,获取当前行的值和选择行的值进行对比
grid.png
远程的联系方法QQ1392416607,添加好友时,需在备注里注明其论坛名字及ID,公司等信息
发远程时同时也发一下帖子地址,方便了解要解决的问题  WeX5教程  WeX5下载



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

使用道具 举报

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

本版积分规则

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

GMT+8, 2025-8-24 10:31 , Processed in 0.062771 second(s), 29 queries .

Powered by Discuz! X3.4

© 2001-2013 Comsenz Inc.

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