请选择 进入手机版 | 继续访问电脑版
 找回密码
 立即注册

QQ登录

只需一步,快速开始

AirCat
金牌服务用户   /  发表于:2025-3-24 10:47  /   查看:119  /  回复:2
本帖最后由 Richard.Ma 于 2025-3-31 16:24 编辑

产品:SpreadJS
版本:18.0.3
调研编号:SJS-28773
Last Review:2025-03-28
当前进展:已经给出实现代码



在某些事件中允许cancel,这个cancel动作
希望可以扩展到一些其他的事件里,比如RangeChanged,RowChanging,ColumnChanging等;

框选区域按delete键触发删除动作时,框选区域会被直接删除,框选区域可能设置了重要的内容信息,我们希望这个删除动作可以给出一个提示,用户确定后再删除;

删除动作会触发
RangeChanged,RowChanging,ColumnChanging事件,但在这些事件中没有办法cancel删除动作,导致页面展示上内容先被删除再弹窗提示。


2 个回复

倒序浏览
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-3-24 17:04:11
沙发

产品中支持此功能我们需要调研评估,跟踪编号SJS-28773, 后续进展会在帖子中更新

另外,可以考虑下面的方案实现类似的效果,delete键按下执行的是clearValues命令,因此可以考虑将原有的clearValues进行扩展,在此前加上一些自己的判断逻辑
可以参考此前写过一个类似的教程
https://gcdn.grapecity.com.cn/showtopic-222499-1-1.html

针对这个需求,可以参考下面的demo
custom_ClearValueCMD.zip (2.15 KB, 下载次数: 1)
回复 使用道具 举报
Richard.Ma讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2025-3-31 16:20:40
板凳
本帖最后由 Richard.Ma 于 2025-3-31 16:25 编辑

经调查,通过下面的代码即可实现需求,比上面提供的示例更方便一些,请验证是否能解决目前项目中的需要。

帖子我先移动到求助中心板块了,如果还有问题可以继续回帖沟通

  1. var clearExecute = GC.Spread.Sheets.Commands.clear.execute;
  2. GC.Spread.Sheets.Commands.clear.execute = function (spread, options) {
  3.     var sheet = spread.getSheetFromName(options.sheetName);
  4.     var selection = sheet.getSelections();
  5.     GC.Spread.Sheets.Designer.showMessageBox('confirm delete content', 'delete', GC.Spread.Sheets.Designer.MessageBoxIcon.warning, (result) => {
  6.         if (result === GC.Spread.Sheets.Designer.MessageBoxResult.ok) {
  7.             spread.commandManager().execute({ cmd: 'needConfirmed_Clear', sheetName: options.sheetName });
  8.         } else {
  9.             //donothing
  10.         }
  11.     }, null, GC.Spread.Sheets.Designer.MessageBoxButtons.okCancel);
  12. };
  13. var designer = new GC.Spread.Sheets.Designer.Designer('dss');
  14. var spread = designer.getWorkbook();
  15. spread.commandManager().register('needConfirmed_Clear', clearExecute, null, false, false, false, false);
复制代码

回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部