Handsontable 自定义cell editor

时间:2024-05-19 16:14:06

Handsontable 自定义cell editor

一 handsontable系统自带的celleditor

Handsontable 自定义cell editor

二 自定义handsontable cell editor

2.1 可以继承handsontable既有的editor改造,如下如所示

先继承

var CustomTextEditor = Handsontable.editors.TextEditor.prototype.extend();

然后注册一下

Handsontable.editors.registerEditor('CustomTextEditor', CustomTextEditor);

最后可以覆盖基类的方法,到达自定义的目的。

CustomTextEditor.prototype.beginEditing = function() {

  for (var _len2 = arguments.length, args = new Array(_len2), _key2 = 0; _key2 < _len2; _key2++) {

    args[_key2] = arguments[_key2];

  }

  let expr = String(this.prop + 'Expr');

  let editExpr = this.instance.getDataAtRowProp(this.row, expr);

  if (editExpr != null && editExpr != '') {

    this.originalValue = editExpr;

  }

  Handsontable.editors.TextEditor.prototype.beginEditing.apply(this, args);

};

 

使用的时候可以给指定的列指定自定义editor

column.editor = 'CustomTextEditor';