找回密码
 立即注册

QQ登录

只需一步,快速开始

z3393898

初级会员

14

主题

38

帖子

446

积分

初级会员

积分
446
z3393898
初级会员   /  发表于:2017-4-14 15:59  /   查看:3666  /  回复:3
产品版本:spreadjsv9
浏览器版本: ie11
问题描述:想要通过绑定EditStarting事件,通过单元格的性质判断单元格是否可编辑,如何在这个EditStarting事件中取消本次编辑?使用了sheet.endEdit(true),单元格的值还是变了.
关键代码:
[size=14.6667px]sheet.bind(GcSpread.Sheets.Events.EditStarting, function (sender, args) {
[size=14.6667px]                if(fcbbdyIfhbd == "1"&&args.row>=fcbbdyHeadRow+fcbbdyTitleRow&&args.row<fcbbdyHeadRow+fcbbdyTitleRow+ bzhs + addhs){
[size=14.6667px]                    var ifBdh = dataSource._source.bzsjs[(args.row - fcbbdyTitleRow - fcbbdyHeadRow)].FCSJ_IFBDH;
[size=14.6667px]                    if (args.col<fcbbdyInfCols&&xxlWdArr[args.col].split(";")[2] == "1"&&ifBdh=="0") {     /*如果是初始行,就取消本次编辑*/
[size=14.6667px]                        sheet.endEdit(true);
[size=14.6667px]                    }
[size=14.6667px]                }
[size=14.6667px]            });
blob690141601.png


3 个回复

倒序浏览
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-4-15 15:35:56
推荐
事件中可以取消继续编辑
activeSheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, args) {
    args.cancel = true;
});

http://sphelp.grapecity.com/webh ... ditStarting_EV.html
回复 使用道具 举报
z3393898
初级会员   /  发表于:2017-4-18 16:57:49
板凳
dexteryao 发表于 2017-4-15 15:35
事件中可以取消继续编辑
activeSheet.bind(GC.Spread.Sheets.Events.EditStarting, function (sender, arg ...

可以的,谢谢
回复 使用道具 举报
dexteryao讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2017-4-18 18:06:15
地板
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 立即注册
返回顶部