Ag-grid中onCellValueChanged和Tab键的问题

时间:2020-02-11 10:44:15

标签: angularjs ag-grid ag-grid-angular

Ag-grid版本:3.3

我有一个带有可编辑单元格的表

  {
    field: 'montant',
    headerName: 'montant',
    cellClass: 'text-right',
    filter: 'number',
    editable: true,
    valueGetter: function(params) {
      params.data.montant = parseFloat(params.data.montant);
      if (_.isNaN(params.data.montant)) return $filter('formatNumber')(params.data.montant, vm.devise.type);
      return params.data.montant;
    },
    template:
      '    <span ng-if="mode===\'AMOUNT\'">{{data.montant | formatNumber: devise}} <i class="fa fa-pencil-square"></i></span>\n' +
      '    <span ng-if="mode===\'PERCENT\'">{{data.montant | percent}} <i class="fa fa-pencil-square"></i></span>'
  }

在可编辑单元格的每次更改时,我还使用OnCellValueChanged,这使我可以计算单元格的总和。

function onCellValueChangedFunc(params) {
  if (!_.isUndefined(params)) {
    vm.calc(params.data.montant);
  }
}

当我单击每个单元格并更改值时,将显示该值,并且总金额也将更改。

但是当我使用选项卡键盘键时,我可以更改值,但是它返回一个空值,并且不执行计算。

enter image description here

我必须离开标签才能看到单元格的变化

您对此问题有解决方案吗?

1 个答案:

答案 0 :(得分:0)

您可以使用Ag Grid提供的ICellEditorAngularComp的focusIn()函数来实现此功能。