From Api:
$(\'#myTable\').DataTable( {
buttons: {
buttons: [
{
text: \'Alert\',
action: function ( e, dt,
See https://datatables.net/forums/discussion/33209/run-script-before-exporting-begins-buttons-plugin You need to call the original action programmatically. Small example :
$('#example').DataTable( {
dom: 'Bfrtip',
buttons: [{
extend: 'excel',
action: function(e, dt, button, config) {
config.filename = dynamicVariable;
$.fn.dataTable.ext.buttons.excelHtml5.action(e, dt, button, config);
}
}]
})
var dynamicVariable = 'qwerty';
Will produce a qwerty.xslx
see -> https://jsfiddle.net/2ez9mxop/2