2

我在每一行都有一个编辑按钮,我已经设置了

  defaultColDef: {
    editable: false,
  } 

在网格选项中

当我单击编辑按钮时,我希望该行处于编辑模式。如果我设置,我的编辑按钮可以正常工作

  defaultColDef: {
    editable: true,
  } 

但它启用了我不想进行的按键编辑。

我应该如何在不将可编辑设置为 true 的情况下动态编辑该特定行defaultColdef

单击编辑时,我启用了this.gridOptions.defaultColDef.editable = true,但没有运气!

4

2 回答 2

3

在定义 columnDefs 时,给出 editable: false

单击编辑按钮时,用于动态编辑行中的特定列/单元格:

this.GridOptions.columnApi.getColumn('employeeName').getColDef().editable = true;

并在完成编辑使用后:

 this.GridOptions.columnApi.getColumn('employeeName').getColDef().editable = false;
于 2017-11-23T07:23:11.267 回答
2

您可以实现 ag-grid 的 onCellClicked 方法来侦听编辑按钮上的单击事件,然后使用 startEditing 方法开始编辑相应的行。示例代码如下:

onCellClicked(value): void {
    if (value.colDef.colId === '<YOUR_EDIT_BUTTON_COL_ID>') {
        this.gridOptions.api.startEditing({
            rowIndex: value.rowIndex,
            colKey: '<col_id_of_first_editbale_col_in_the_row>'
        });
  }
}
于 2018-07-10T21:18:36.663 回答