我在保存CSV时使用TableTools插件做了一些测试。
我注意到它保存了所有东西。它不关心您是否过滤了行,也不关心您是否隐藏了一些列。
有没有办法只保存可见列中的数据?
发布于 2014-05-13 22:17:47
您希望在定义buttons时使用mColumns。
文档中的一个示例:
$(document).ready( function () {
$('#example').dataTable( {
"sDom": 'T<"clear">lfrtip',
"oTableTools": {
"aButtons": [
{
"sExtends": "csv",
"sButtonText": "Special columns",
"mColumns": [ 0, 1, 4 ]
},
{
"sExtends": "csv",
"sButtonText": "Visible columns",
"mColumns": "visible"
}
]
}
} );
} );这定义了两个将导出为CSV文件的按钮。第一个标记为Special columns,将只导出列0,1,4。标记为Visible columns的第二个按钮将导出所有可见的列。
文档中对mColumns参数的描述如下:
参数可以是值为'all‘、'visible’、'hidden‘或'sortable’的字符串,也可以是包含要导出的列索引的整数数组。
此功能在1.10版本中并不是新功能。如果你还没有升级,它也可以在older version中使用。
发布于 2016-09-20 20:22:16
只是为了完成。在最新版本的DataTables上,它略有不同(这里是documentation):
$(document).ready(function() {
$('#example').DataTable( {
dom: 'Bfrtip',
buttons: [
{
extend: 'print',
exportOptions: {
columns: ':visible'
}
},
'colvis'
],
columnDefs: [ {
targets: -1,
visible: false
} ]
} );
} );发布于 2018-09-11 22:05:48
只是为了添加更多的选项,我需要在我的场景中使用这些选项,这可能对某些人有用。
向列传递多个参数,并使用not()排除包含类的列:
extend: 'csv',
exportOptions: {
columns: ':not(.noShow):visible'
}https://stackoverflow.com/questions/23484036
复制相似问题