【问题标题】:Export selected rows with buttons collection not working in dataTables导出带有按钮集合的选定行在 dataTables 中不起作用
【发布时间】:2017-07-18 06:29:39
【问题描述】:

我正在尝试仅从数据表中导出选定的行。通过将扩展选项设置为 csv,我可以成功地将选定的行导出到 csv 文件,如下面的代码所示。

buttons: [
    'colvis',
    'selectAll',
    'selectNone',
    {
        extend: 'csv',
        text: 'Export Selected',
        exportOptions: {
            columns: ':visible:not(.not-exported)',
            modifier: {
                 selected: true
            }
        },
        title: 'Data export'
    }
],

但我想要一个下拉菜单(csv、复制、打印),我可以从中选择将选定的行导出到其中。我尝试在下面的代码中使用集合。但它会导出所有可见的行。有人请帮忙

buttons: [
    'colvis',
    'selectAll',
    'selectNone',
    {
        extend: 'collection',
        text: 'Export Selected',
        buttons: ['copy','csv','print'],
        exportOptions: {
            columns: ':visible:not(.not-exported)',
            modifier: {
                 selected: true
            }
        },
        title: 'Data export'
    }
],

【问题讨论】:

    标签: datatables export


    【解决方案1】:

    您只需使用rows: '.selected' 即可定义“仅选定”。但是:即使您使用的是集合,您仍然需要为每个按钮提供设置。即

    buttons: ['copy','csv','print'],
    

    应该是

    buttons: [
      { extend :'copy',
        exportOptions : {
         columns: ':visible:not(.not-exported)',
         rows: '.selected'
      }
      ...
    ]
    

    你可以通过重用一个简单的文字来减少代码量

    var exportOptions = {
      columns: ':visible:not(.not-exported)',
      rows: '.selected'
    }
    

    工作示例代码最终会是这样的:

    buttons: [
      'colvis',
      'selectAll',
      'selectNone',
      {
        extend: 'collection',
        text: 'Export Selected',
        buttons: [
          { extend : 'copy',
            exportOptions: exportOptions
          },
          { extend : 'csv',
            exportOptions: exportOptions
          },
          { extend : 'print',
            exportOptions: exportOptions
          }
        ]   
      }
    ]
    

    这是一个演示 -> https://jsfiddle.net/youn7zm4/

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-10-08
      • 1970-01-01
      • 2016-04-12
      • 2012-10-03
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多