从数据表按钮中的导出中排除列

Exclude column from export in Datatables Buttons

我对我的数据进行了以下初始化tables:

$(document).ready(function() {
    $('.datatable').dataTable({
       dom: 'Bfrtip',
        buttons: [
                    {
                        extend: 'copyHtml5',
                        text: 'Copy Content to Clipboard',
                        className: 'btn',
                    },
                    {
                        extend: 'excelHtml5',
                        text: 'XLS Download',
                        className: 'btn',
                        "mColumns": [ 8 ]
                    },
                    {
                        extend: 'csvHtml5',
                        text: 'CSV Download',
                        className: 'btn',
                        "mRender": function (data, type, row) {
                             console.log(data);
                        }

                    },
        ],

    });
});

我正在使用数据table 按钮,因为 table工具已从数据中弃用 table 并尝试了很多选项:

"mRender": function (data, type, row) {
                                 console.log(data);
                            }

也尝试过:

"mColumns": [ 8 ]

我尝试过以各种方式应用不同的参数,但我的 understanding.Kindly 帮助中缺少某些内容。

谢谢。

查找 exportOptions.columns, exportOptions let you define a column-selector 的方式与针对特定列进行过滤等的方式相同。例如,在 PDF 导出中仅包含第三列和第四列:

$('#example').DataTable( {
  dom: 'Bfrtip',
  buttons: [
    {
      extend: 'pdf',
      exportOptions: {
        columns: [ 2, 3 ]
      }
    }
  ]
});

演示 -> https://jsfiddle.net/r9Lqbhz4/

其他示例:

exportOptions: {
   columns: ':visible' //visible rows
}
exportOptions: {
   columns: ['.export', '.important'] //by class selector
}

等等,见上面提到的column-selector页,

根据评论:所有可见列,特别是一个除外:

exportOptions: {
   columns: ':visible:not(:eq(2))' 
}

将包括除第 2 列(第三列)之外的所有可见列。请注意,eq() 列索引基于可见列索引。