找回密码
 立即注册

QQ登录

只需一步,快速开始

zjtdusers

初级会员

67

主题

146

帖子

465

积分

初级会员

积分
465
zjtdusers
初级会员   /  发表于:2020-12-16 17:07  /   查看:2856  /  回复:5
image.png895676574.png

如何设置成只能选择,不能输入。

5 个回复

倒序浏览
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-12-16 17:19:29
沙发
本帖最后由 lynn512 于 2020-12-16 17:20 编辑

参考以下代码:
sheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
                var r = args.row;
                var c = args.col;
                //判断如果单元格内有cellButtons
                if(sheet.getCell(r,c).cellButtons()) {
                    args.cancel = true;
                }
            });

EditStarting 事件API: https://demo.grapecity.com.cn/sp ... #event:EditStarting
可以参考这篇帖子:https://gcdn.grapecity.com.cn/fo ... 84074&fromuid=59119

回复 使用道具 举报
zjtdusers
初级会员   /  发表于:2020-12-17 17:23:59
板凳
lynn512 发表于 2020-12-16 17:19
参考以下代码:
sheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
         ...

这样确实可以不能编辑。
但我还要实现一个功能,例如,当某个单元格的下拉列表选中某个值时,则该单元格变成可编辑态。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-12-17 17:48:51
地板
给您提供一个思路,您在设置单元格不可编辑时可以加个判断。
您可以使用API获取下拉列表的值,并监听ValueChanged事件。
如果newValue值为下拉列表值之一,则可以编辑。
如果值为其他,则不可编辑。
回复 使用道具 举报
zjtdusers
初级会员   /  发表于:2020-12-17 18:05:41
5#
lynn512 发表于 2020-12-17 17:48
给您提供一个思路,您在设置单元格不可编辑时可以加个判断。
您可以使用API获取下拉列表的值,并监听Value ...

这样会有个问题,例如当下拉框的值为'apple'字符的时候可以编辑,可是我要编辑时,把'apple'字段删除了,这个单元格又不可编辑了。
回复 使用道具 举报
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2020-12-17 18:17:17
6#
您现在的需求其实已经与 只能选择不可编辑 这个最初需求有些相悖了,目前也没有更好的方案了。
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部