创建handsontable onEdit回调(Create onEdit callback in

2019-10-22 16:30发布

我使用handsontable库和我很惊讶,当我发现没有一个onEdit回调 。

我试图通过使用一个用户提供的脚本来创建它的是同样的问题,但似乎它的旧版本,它不工作了。

我试图找出如何添加一个钩子,但它的文档是相当差的handsontable。 是否有人知道如何为handsontable建立这样一个回调?

Answer 1:

仅捕获双击是不够的,因为用户还可以通过输入回车键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;
};

该解决方案,但是,是不是通用的,因为如果使用一个以上的编辑器,它必须被替换了。 它应该在简单的情况下工作,虽然。 完整的例子中可以找到这个小提琴 。



文章来源: Create onEdit callback in handsontable