Javascript 在handsontable中创建onEdit回调
我正在使用图书馆,当我发现这一点时,我感到非常惊讶 我试图使用中一个用户提供的脚本创建它,但它似乎是针对旧版本的,不再工作 我试图弄清楚如何添加一个钩子,但是它的文档在handsontable上非常差。Javascript 在handsontable中创建onEdit回调,javascript,jquery,handsontable,Javascript,Jquery,Handsontable,我正在使用图书馆,当我发现这一点时,我感到非常惊讶 我试图使用中一个用户提供的脚本创建它,但它似乎是针对旧版本的,不再工作 我试图弄清楚如何添加一个钩子,但是它的文档在handsontable上非常差。 有人知道如何为handsontable创建这样的回调吗?仅捕获双击是不够的,因为用户可能会使用enter或F1键进一步进入编辑模式 缺少onEdit回调的一个解决方案是注册一个自定义编辑器。这样,它可以很好地适应所有编辑保存退出生命周期(例如,Esc键关闭编辑器并丢失所有更改)。下面是一个非常简
有人知道如何为handsontable创建这样的回调吗?仅捕获双击是不够的,因为用户可能会使用enter或F1键进一步进入编辑模式 缺少
onEdit
回调的一个解决方案是注册一个自定义编辑器。这样,它可以很好地适应所有编辑保存退出生命周期(例如,Esc键关闭编辑器并丢失所有更改)。下面是一个非常简化的编辑器,它扩展了内置和默认的TextEditor
:
var LoggingEditor = Handsontable.editors.TextEditor.prototype.extend();
LoggingEditor.prototype.getValue = function() {
console.log('User finished editing the cell, the value will be set to: '
+ this.TEXTAREA.value);
return this.TEXTAREA.value;
};
LoggingEditor.prototype.setValue = function(newValue){
console.log('User started editing the cell, value shown in cell is: '
+ newValue);
this.TEXTAREA.value = newValue;
};
但是,此解决方案不是通用的,因为如果使用了多个编辑器,它也必须被替换。不过,它应该适用于简单的情况。完整的示例可以在中找到 谢谢米兰!看起来很棒!但是,当定义
列
选项时,它似乎不起作用:去掉它可以如期工作。有什么解决方案吗?我发现我可以将它添加到列
选项中,作为每个列的另一个属性,但它是。