作成日: 2023/08/07 最終更新日: 2023/12/18
文書種別
制限事項
詳細
rowSpanが1より大きい且つreadOnlyのセルがあり、keyActionEnterプロパティをCycleEditableに設定した場合、Enterキーでセルのフォーカスを移動させると、行内の最後の編集可能なセルから最初の編集可能なセルにフォーカスが移動し、その後に次の行の最初の編集可能なセルにフォーカスが移動します。
回避方法
Multirowのホスト要素でkeydownイベントを利用し、Enterのイベントを実行します。
theMultiRow.hostElement.addEventListener('keydown', (e) => {
if (e.key == 'Enter') {
let sel = theMultiRow.selection;
let mergeRange = theMultiRow.getMergedRange(
theMultiRow.cells,
sel.row,
sel.col
);
let readOnly = theMultiRow.getBindingColumn(
theMultiRow.cells,
sel.row,
sel.col
).isReadOnly;
if ((mergeRange && mergeRange.topRow != sel.row) || readOnly) {
theMultiRow._keyHdl._performKeyAction(
wjGrid.KeyAction.CycleEditable,
e.shiftKey
);
theMultiRow.hostElement.dispatchEvent(
new KeyboardEvent('keydown', { key: 'Enter' })
);
}
}
});