【发布时间】:2018-05-01 10:12:02
【问题描述】:
我正在尝试复制单元格的文本内容 - 我不需要能够粘贴到 Excel 或任何内容中,我只想要纯文本内容。突出显示文本、右键单击和选择复制按预期工作(因此与SlickGrid and Text Selection 中的问题不同,因为我可以选择文本)但突出显示并按 ctrl+c 不能(没有任何内容被复制到剪贴板)。
我尝试在 slick.grid.js($canvas.on("keydown", handleKeyDown) 和 $focusSink.add($focusSink2).on("keydown"), handleKeyDown))中注释掉按键处理代码,但没有任何变化。
Windows 10 上的 Chrome 61,如果重要的话。
使用Basic use with configuration 示例进行复制,将 enableTextSelectionOnCells 设置为 true:
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=iso-8859-1">
<link rel="shortcut icon" type="image/ico" href="favicon.ico" />
<title>SlickGrid example 1: Basic grid</title>
<link rel="stylesheet" href="../slick.grid.css" type="text/css"/>
<link rel="stylesheet" href="../css/smoothness/jquery-ui-1.11.3.custom.css" type="text/css"/>
<link rel="stylesheet" href="examples.css" type="text/css"/>
</head>
<body>
<div id="myGrid" style="width:600px;height:500px;"></div>
<script src="../lib/jquery-1.11.2.min.js"></script>
<script src="../lib/jquery.event.drag-2.3.0.js"></script>
<script src="../slick.core.js"></script>
<script src="../slick.grid.js"></script>
<script>
var grid;
var columns = [
{id: "title", name: "Title", field: "title"},
{id: "duration", name: "Duration", field: "duration"},
{id: "%", name: "% Complete", field: "percentComplete"},
{id: "start", name: "Start", field: "start"},
{id: "finish", name: "Finish", field: "finish"},
{id: "effort-driven", name: "Effort Driven", field: "effortDriven"}
];
var options = {
enableCellNavigation: true,
enableTextSelectionOnCells: true,
enableColumnReorder: false
};
$(function () {
var data = [];
for (var i = 0; i < 500; i++) {
data[i] = {
title: "Task " + i,
duration: "5 days",
percentComplete: Math.round(Math.random() * 100),
start: "01/01/2009",
finish: "01/05/2009",
effortDriven: (i % 5 == 0)
};
}
grid = new Slick.Grid("#myGrid", data, columns, options);
})
</script>
</body>
</html>
【问题讨论】:
-
不是重复的 -
enableTextSelectionOnCells是真的,我可以选择单元格文本。我的问题是选择文本后,ctrl+c 没有复制任何内容。 -
我们怎么知道? edit您的问题包含minimal reproducible example
-
一直在努力争取时间来研究这个问题。有几个示例具有 Excel 样式的剪切和粘贴功能。在这些情况下,即使该列不可编辑,也必须在列上定义一个编辑器,以便它可以处理与文本的转换以进行剪切和粘贴。所以这可能是一样的。我很快就会有机会查看代码库。
-
好的,终于有机会看看了。但是,当我测试上面的示例时,选择文本,按 ctrl-C 并粘贴到记事本中可以正常工作。不知道发生了什么。 Windows 10 上的 Chrome 66。
标签: javascript slickgrid