从 Excel 粘贴时出现 Slickgrid 按键问题

Slickgrid keydown issue when pasting from Excel

我正在使用 Slickgrid,我希望能够从 Excel.

进行复制和粘贴

我找到的样本允许这样做 https://6pac.github.io/SlickGrid/examples/example-excel-compatible-spreadsheet.html 但是,我遇到了一个问题(可以在示例中看到),我认为这是不可取的。

我的单元格是可编辑的,所以基本上,我单击一个单元格就可以直接输入。我将 Tab 键或光标移到另一个单元格,然后再次输入,我可以直接输入。

举个例子,我不能再这样做了。我必须双击才能输入任何内容。

处理来自 Excel 的粘贴的相关插件是 https://github.com/6pac/SlickGrid/blob/master/plugins/slick.cellexternalcopymanager.js

我发现如果我对上面的第 63 行 (_grid.focus()) 进行注释,那么我可以单击并输入,但粘贴不起作用。

实际上,让我更正一下...我刚刚再次尝试将 _grid.focus() 注释掉,我可以单击并键入,然后我可以从 Excel 粘贴。 (现在,我不确定为什么我什至需要 _grid.focus())

不幸的是,我不明白 .focus() 在做什么,我无法自己修复它。看起来 .focus() 正在进入 JQuery 库,但我不知道为什么它会打破常规的点击和输入。

我现在还需要第 63 行吗?我只是(目前)要粘贴到 Slickgrid,而不是 select from.

任何方向将不胜感激。

[已编辑] 这里有几个控制体验的网格选项。

如果 autoEdit 关闭,您需要双击单元格进入编辑模式(单击 select 单元格)。如果打开,单击一次即可 select 并编辑一个单元格。

如果 asyncEditorLoading 打开,编辑器会立即启动,例如,在文本编辑器中,单元格中的文本将完全 selected 开始(否则您需要第二次单击 select 文本)。

但是请注意,启用 autoEdit 后,您无法 select 网格区域进行剪切和粘贴。这是网格代码在某些时候必须处理的问题(我是项目维护者之一)。

这是最后的选择:

var options = {
  editable: true,
  enableAddRow: true,
  enableCellNavigation: true,
  asyncEditorLoading: true,
  autoEdit: true
};