SlickGrid并从单元格复制文本

问题描述 投票:2回答:1

我正在尝试复制单元格的文本内容-我不需要能够粘贴到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>
javascript slickgrid
1个回答
0
投票

我能够使用以下示例获取“复制到剪贴板”的功能:https://6pac.github.io/SlickGrid/examples/example-excel-compatible-spreadsheet.html

我不在乎粘贴或其他许多Excel功能,因此我将readOnlyMode设置为这样:

grid.registerPlugin(new Slick.CellExternalCopyManager({
    readOnlyMode : true,
    includeHeaderWhenCopying : false,
}));
© www.soinside.com 2019 - 2024. All rights reserved.