找回密码
 立即注册

QQ登录

只需一步,快速开始

RANDO
初级会员   /  发表于:2021-6-23 14:53  /   查看:2109  /  回复:3
1金币
初始化spread时,sheet可以通过 EditStarting 事件的第二个参数的 `cancel` 来禁止单元格编辑。


但通过 `addSheet` 来添加新的 sheet 后,新的 sheet 就不能用这种方式了。


可以明确事件是触发了。
image.png808453368.png
image.png545122069.png
按照这个顺序输出的结果是这样的,最终cancel还是false。

我尝试了写个最小demo,发现是正常的,请问这个情况有可能是什么导致的。

3 个回复

倒序浏览
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-6-23 15:00:24
沙发
这个事件绑定在指定的sheet上,只对当前的sheet有效,对于新增是不生效的,您可以绑定在spread上,例如
spread.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
    console.log("Start cell editing.");
});
回复 使用道具 举报
RANDO
初级会员   /  发表于:2021-6-23 15:03:31
板凳
Derrick.Jiao 发表于 2021-6-23 15:00
这个事件绑定在指定的sheet上,只对当前的sheet有效,对于新增是不生效的,您可以绑定在spread上,例如
sp ...

我理解您的意思,我就是新创建的sheet上绑定的事件,不然不会触发那些测试输出(console.log)。我想针对这个sheet的某些单元格做处理
回复 使用道具 举报
Derrick.Jiao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
论坛元老   /  发表于:2021-6-23 15:09:54
地板
RANDO 发表于 2021-6-23 15:03
我理解您的意思,我就是新创建的sheet上绑定的事件,不然不会触发那些测试输出(console.log)。我想针对 ...

这边在14.1.1中未能复现您的问题,建议您先尝试升级您的版本,若仍未解决建议您提供能复现问题的demo,这边从demo中调研一下具体原因。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部