找回密码
 立即注册

QQ登录

只需一步,快速开始

雪峰
注册会员   /  发表于:2021-9-17 08:50  /   查看:2222  /  回复:1
1金币

最佳答案

查看完整内容

您好,没有专门用于监听table column 编辑的事件,table column 实际上也是一个单元格。 有个思路您可以参考下: 可以使用 EditEnding事件直接监听单元格的编辑。 使用 table.getColumnName(0) 可以获取table 的列名, 遍历列名,如果与输入的值一致则设置 cancel 为true。 示例代码:

1 个回复

倒序浏览
最佳答案
最佳答案
Lynn.Dou讲师达人认证 悬赏达人认证 SpreadJS 开发认证
超级版主   /  发表于:2021-9-17 08:50:17
来自 2#
您好,没有专门用于监听table column 编辑的事件,table column 实际上也是一个单元格。
有个思路您可以参考下:
可以使用  EditEnding事件直接监听单元格的编辑。
使用 table.getColumnName(0) 可以获取table 的列名,
遍历列名,如果与输入的值一致则设置  cancel 为true。

示例代码:
image.png513429259.png
  1. var table = sheet.tables.all()[0]
  2. sheet.bind(GC.Spread.Sheets.Events.EditEnding, function (sender, args) {
  3.     var row = table.range.row;
  4.     var col = table.range.col;
  5.     var rowCount = 1;
  6.     var colCount = table.range.colCount;
  7.     var editValue = args.editingText;
  8.     for(var i=0; i<colCount; i++) {
  9.         var colName = table.getColumnName(i);
  10.         if(editValue == colName) {
  11.             args.cancel = true;
  12.         }
  13.     }
  14. });
复制代码


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