找回密码
 立即注册

QQ登录

只需一步,快速开始

钛和集团

初级会员

34

主题

120

帖子

382

积分

初级会员

积分
382
钛和集团
初级会员   /  发表于:2024-5-30 20:19  /   查看:2176  /  回复:16
本帖最后由 钛和集团 于 2024-5-31 10:34 编辑

image.png615516967.png
1.比如我现在选中了3个,然后取消了一个,但是还是显示3个
image.png349496764.png
2.然后我shift直接指定范围,只显示点击的那个了,如何获取全部呢
image.png87676085.png
3.我按ctrl键选中和取消选中,这个返回值变成返回两个值了
image.png979334716.png
并且选了1,2,3,4的时候,ctrl键取消4,返回值如下

image.png473699950.png
4.如何只获取选中的数据,如果有筛选过,把筛选后隐藏的数据也去掉

5.点击这个位置,怎么获取全部
image.png716456603.png

我的需求就是要根据选择的行头获取到当前行数据,会有取消选择;会有不选择筛选隐藏的数据;不会连续选择;会shift连着选中一片后,又ctrl键选中单个。如果getSelections用不了,我要怎么实现我想要的需求呢
image.png155653990.png


以下代码
image.png393274535.png






16 个回复

倒序浏览
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-31 10:31:35
沙发
您好,根据您的需求,建议您使用SelectionChanged事件来实现。

https://demo.grapecity.com.cn/sp ... ts#selectionchanged
回复 使用道具 举报
钛和集团
初级会员   /  发表于:2024-5-31 10:45:20
板凳
本帖最后由 钛和集团 于 2024-5-31 11:31 编辑
Joestar.Xu 发表于 2024-5-31 10:31
您好,根据您的需求,建议您使用SelectionChanged事件来实现。

https://demo.grapecity.com.cn/spreadjs ...

不太行啊,我之前也有试过,比如我现在选中这4个,
1717123355092.png582343749.png

然后取消选中最后一个,他就直接把第一个合并的全返回回来了
1717123386268.jpg575425109.png
但是实际上我就选了第一条
image.png970331420.png


我只想返回我选中的行的索引值


行头选中问题.zip

5.31 KB, 下载次数: 389

回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-31 15:13:54
地板
您好,我结合您实际的需求并参考了一下您之前的代码,可以用下面这部分代码再试试:

  1. sheet.bind(GC.Spread.Sheets.Events.SelectionChanged, function (sender, args) {
  2.   console.log(args);
  3.   let checkedRows = new Set();
  4.   for (let item of args.newSelections) {
  5.     checkedRows.add(item.row);
  6.   }
  7.   console.log(checkedRows);
  8. });
复制代码


image.png81331481.png

image.png533822631.png

全选时会返回-1。其他情况下会根据点击的Row的索引显示,点击合并单元格仅会添加合并单元格左上角的行索引。
回复 使用道具 举报
钛和集团
初级会员   /  发表于:2024-5-31 15:30:20
5#
本帖最后由 钛和集团 于 2024-5-31 15:47 编辑
Joestar.Xu 发表于 2024-5-31 15:13
您好,我结合您实际的需求并参考了一下您之前的代码,可以用下面这部分代码再试试:

image.png707725219.png

image.png518807067.png
1.还有这个问题,我取消选中了,这个合并的怎么1,2,3,4都选上了,怎么能取消选择后还是是下图这样的
image.png132390441.png



2.同样,,这个合并项内怎么取消选择后会维持原样啊,比如第一条和第二条行头选择的颜色就还是绿色,不会再第三条取消后变成灰色
image.png761744994.png
image.png753768920.png


3.还有这个,比如我全选后,然后没有合并项的,我点一次就取消选择了,有合并项的,比如第1,2,3,4条,我点4取消后,点第3条取消就要点击两次才能取消了
image.png854043884.png
回复 使用道具 举报
钛和集团
初级会员   /  发表于:2024-5-31 15:33:20
6#
本帖最后由 钛和集团 于 2024-5-31 15:56 编辑
Joestar.Xu 发表于 2024-5-31 15:13
您好,我结合您实际的需求并参考了一下您之前的代码,可以用下面这部分代码再试试:

image.png46526793.png

还有你这个还是不对啊,我shift 划拉多个,还只返回一个,只有点击才有效果呢



我现在的主要的需求目的就是把前面的行头选择,当做多选全选那个复选框,,,,,所以整个样式希望能在选择和取消选择过程中不变化,然后返回选中的值这样,
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-31 17:40:54
7#
您好,在SelectionChanged事件中可以监听到是否按下了Shift键,当shiftKey为true时,可以将newSelections中的数据解析成一个序列,如:[0, 1, 2, 3, 4, 5],然后输出即可。

163809bqiq3g990ng90d8i.png283845214.png
回复 使用道具 举报
钛和集团
初级会员   /  发表于:2024-5-31 17:53:34
8#
钛和集团 发表于 2024-5-31 15:30
1.还有这个问题,我取消选中了,这个合并的怎么1,2,3,4都选上了,怎么能取消选择后还是是下图这样 ...

还有这个呢
回复 使用道具 举报
Joestar.XuSpreadJS 开发认证
超级版主   /  发表于:2024-5-31 18:06:59
9#
您好,根据您的描述我不太能复现出这些问题,能否请您再详细描述一下,或者提供一个视频\动图来帮助说明问题。
回复 使用道具 举报
钛和集团
初级会员   /  发表于:2024-5-31 18:20:01
10#
本帖最后由 钛和集团 于 2024-5-31 18:21 编辑
Joestar.Xu 发表于 2024-5-31 18:06
您好,根据您的描述我不太能复现出这些问题,能否请您再详细描述一下,或者提供一个视频\动图来帮助说明问 ...

你就根据我上面的截图或者demo里的数据,选中多条然后用ctrl键取消选中就能复现了
回复 使用道具 举报
12下一页
您需要登录后才可以回帖 登录 | 立即注册
返回顶部