找回密码
 立即注册

QQ登录

只需一步,快速开始

spreadjs666
金牌服务用户   /  发表于:2024-11-19 16:51  /   查看:214  /  回复:7
1金币
本帖最后由 Wilson.Zhang 于 2024-11-28 15:11 编辑


产品:SpreadJS
版本:17.1.9
调研编号:SJS-27502
Last Review:2024-11-28
当前进展:调研中。

image.png321217955.png

需求:当删除重复项时如果扩展后区域中包含了某些指定单元格
则弹窗自动关闭 或 点击【确定】时提示用户无法操作并关闭弹窗。

问题:没有找到确认按钮的回调和关闭弹窗的代码方法

7 个回复

倒序浏览
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-11-19 17:15:42
沙发
您好,需要调研下是否有相关回调方法,待有结果贴中同步您。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-11-20 13:56:34
板凳
"确定按钮"没有可重写的对应命令,可以考虑自定义工具栏的”删除重复值“按钮命令。
image.png986978454.png
示例代码可参考:

  1. var removeDuplicatesCommand = GC.Spread.Sheets.Designer.getCommand(GC.Spread.Sheets.Designer.CommandNames.RemoveDuplicates);
  2. if (removeDuplicatesCommand) {
  3.     var oldExecute = removeDuplicatesCommand.execute;
  4.     removeDuplicatesCommand.execute = function (context, propertyName, args) {
  5.         //添加自定义判断逻辑
  6.         var row = 1;
  7.         if(row != 1) {
  8.             oldExecute.call(this, context, propertyName, args);
  9.         } else {
  10.             alert("禁止删除");
  11.         }
  12.     }
  13. }
  14. var designerConfig = JSON.parse(JSON.stringify(GC.Spread.Sheets.Designer.DefaultConfig));
  15. designerConfig.commandMap = {};
  16. designerConfig.commandMap[GC.Spread.Sheets.Designer.CommandNames.RemoveDuplicates] = removeDuplicatesCommand;
  17. // 初始化designer
  18. var designer = new GC.Spread.Sheets.Designer.Designer("gc-designer-container", designerConfig);
复制代码
回复 使用道具 举报
spreadjs666
金牌服务用户   /  发表于:2024-11-20 17:12:23
地板
Lynn.Dou 发表于 2024-11-20 13:56
"确定按钮"没有可重写的对应命令,可以考虑自定义工具栏的”删除重复值“按钮命令。

示例代码可参考:

请问有方法可以直接获取到自动扩展之后的区域吗?
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-11-21 11:08:55
5#
”自动扩展之后的区域“指的是?可以结合您的业务情况举例说明下吗
回复 使用道具 举报
spreadjs666
金牌服务用户   /  发表于:2024-11-21 11:22:15
6#
Lynn.Dou 发表于 2024-11-21 11:08
”自动扩展之后的区域“指的是?可以结合您的业务情况举例说明下吗

您好,删除重复值功能,在用户选择单个单元格时会有自动扩展的逻辑,将选区扩展至周围有值的单元格中。我们想提前获取自动扩展后的选区,如果自动扩展后包含了指定单元格,就将该功能按钮置灰
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-11-21 16:05:12
7#
本帖最后由 Lynn.Dou 于 2024-11-26 15:28 编辑

目前调研来看没找到对应接口,我先记录下来再确认下,有结果贴中通知您。(SJS-27502)
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2024-12-2 09:36:53
8#
经进一步确认,”我们想提前获取自动扩展后的选区“属于designer内部代码逻辑,没有相应接口。目前也没有更好的建议了,您可以从业务场景入手,考虑下其他方案。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部