jQuery Datatables:自定义复制到剪贴板功能

jQuery Datatables:自定义复制到剪贴板功能,datatables,Datatables,Datatables中的内置“复制到剪贴板”功能可以复制带有所选行的表头,因此粘贴方式如下(标题、编号和注释为列): 我需要这样: Title: Test Number: 102 Comment: "nice" Title: Test2 Number: 103 Comment: "ok" dom: 'Bfrtip', buttons: { buttons: [ { extend: 'copyHtml5', text

Datatables中的内置“复制到剪贴板”功能可以复制带有所选行的表头,因此粘贴方式如下(标题、编号和注释为列):

我需要这样:

Title: Test Number: 102 Comment: "nice"
Title: Test2 Number: 103 Comment: "ok"
dom: 'Bfrtip',
buttons: {
       buttons: [
         {
            extend: 'copyHtml5',
            text: 'Copy Selected Rows',
            header: false,
            exportOptions: {
                 modifier: {
                        selected: true
                 }
            }
         }
       ]
}
“复制”按钮的“我的数据表”设置当前如下:

Title: Test Number: 102 Comment: "nice"
Title: Test2 Number: 103 Comment: "ok"
dom: 'Bfrtip',
buttons: {
       buttons: [
         {
            extend: 'copyHtml5',
            text: 'Copy Selected Rows',
            header: false,
            exportOptions: {
                 modifier: {
                        selected: true
                 }
            }
         }
       ]
}
是否有存档此文件的功能?或者如何修改复制过程

解决方案

您可以使用该选项指定复制操作所请求的数据类型
copy
,并在请求数据类型
copy
时呈现适当的内容

$('#example').DataTable({
    dom: 'Bfrtip',
    columnDefs: [{
        targets: "_all",
        render: function (data, type, full, meta) {
            if (type === 'copy') {
                var api = new $.fn.dataTable.Api(meta.settings);

                data = $(api.column(meta.col).header()).text() + ": " + data;
            }

            return data;
        }
    }],
    buttons: [{
        extend: 'copyHtml5',
        text: 'Copy Selected Rows',
        header: false,
        exportOptions: {
            modifier: {
                selected: true
            },
            orthogonal: 'copy'
        }
    }]
});
演示


有关代码和演示,请参见。

谢谢您,先生!你真是个数据表天才。