Нажав Tab во время редактирования, управление переходит в браузер. Ожидайте перехода к следующей ячейке при использовании: DHTMLX grid - PullRequest
0 голосов
/ 12 февраля 2020

Документация: https://docs.dhtmlx.com/suite/grid__api__refs__grid.html

Вот мой код для создания сетки

grid = новый GridDHX (gridContainer.current, {columns: props.columns, data : props.data, настроить: true, редактируемые: true, autoEmptyRow: true, autoWidth: true, выделение: «ячейка», enableEditEvents: true});

И измененное событие щелчка для редактирования

  grid.current.events.on("CellClick", function(
    row,
    column,
    e
  ) {
    grid.editCell(row.id, column.id);
  });
}

Я хочу, чтобы вкладка заняла следующую ячейку и стала редактируемой. Я попробовал код ниже, чтобы закончить редактирование, нажимая tab

grid.events.on ("beforeKeyDown", function (e) {if (e.key === "Tab") {

        grid.editEnd()
      }

    })

1 Ответ

0 голосов
/ 12 февраля 2020

Я думаю, вы можете попробовать что-то вроде этого:

grid.events.on("BeforeKeyDown", (e) => {
  if (e.key === "Tab") {
    grid.editEnd()
  }
})

grid.events.on("AfterKeyDown", (e) => {
  if (e.key === "Tab") {
    var selected = grid.selection.getCell();
    if (selected) {
     grid.editCell(selected.row.id, selected.column.id);
    }
  }
})

https://snippet.dhtmlx.com/6bs7mh34

...