我正在使用jQuery Datatables按钮扩展。
"buttons": [
{
extend: 'colvis', //column visibility
className: 'data_export_buttons'
},
{
extend: 'print',
className: 'data_export_buttons',
exportOptions: {
columns: ':visible'
}
},
{
extend: 'excel',
className: 'data_export_buttons',
exportOptions: {
columns: ':visible'
}
},
{
extend: 'csv',
className: 'data_export_buttons',
exportOptions: {
columns: ':visible'
}
},
{
extend: 'pdf',
className: 'data_export_buttons',
exportOptions: {
columns: ':visible'
}
}
]
然而,一切正常,我想使用上面的代码作为回调函数。因此,不要在我的所有表格中重复相同的行(我有超过15个),我只需要调用这样的函数:
var table = $('#table').DataTable({
"paging": true,
"info": false,
"ordering": true,
"columnDefs": [
{ "targets": [0], "orderable": false}
],
export_data() // the call-back function for colvis and export button extensions
});
我试过这个但是没用。我的桌子丢失了数据。 有没有办法实现这个目标?
答案 0 :(得分:1)
是的,你不能在那里做回调,但是一个同样整洁的方法就是创建一个变量,比如
myButtons = [
{
extend: 'colvis', //column visibility
className: 'data_export_buttons'
},
// snip
];
然后,当您创建表时:
var table = $('#table').DataTable({
"paging": true,
"info": false,
"ordering": true,
"columnDefs": [
{ "targets": [0], "orderable": false}
],
"buttons": myButtons
});