// Call the dataTables jQuery plugin
/*$(document).ready(function() {
$('#dataTable').DataTable();
});
*/
/*$(document).ready(function() {
$('#dataTable').DataTable( {
retrieve: true,
initComplete: function () {
this.api().columns().every( function () {
var column = this;
var select = $('')
.appendTo( $(column.footer()).empty() )
.on( 'change', function () {
var val = $.fn.dataTable.util.escapeRegex(
$(this).val()
);
column
.search( val ? '^'+val+'$' : '', true, false )
.draw();
} );
column.data().unique().sort().each( function ( d, j ) {
select.append( '' )
} );
} );
}
} );
} );*/
$(document).ready(function() {
$('#dataTable').DataTable( {
dom: 'Bfrtip',
buttons: ['copy', 'csv', 'excel', 'pdf', 'print'],
retrieve: true,
initComplete: function () {
this.api().columns().every( function () {
var column = this;
var select = $('')
.appendTo( $(column.footer()).empty() )
.on( 'change', function () {
var val = $.fn.dataTable.util.escapeRegex(
$(this).val()
);
column
.search( val ? '^'+val+'$' : '', true, false )
.draw();
} );
column.data().unique().sort().each( function ( d, j ) {
select.append( '' )
} );
} );
}, // comma here to separate the options
"footerCallback": function ( row, data, start, end, display ) {
var api = this.api(), data;
// Remove the formatting to get integer data for summation
var intVal = function ( i ) {
return typeof i === 'string' ?
i.replace(/[\€,]/g, '')*1 :
typeof i === 'number' ?
i : 0;
};
// Total over all pages
total = api
.column( 0 )
.data()
.reduce( function (a, b) {
return intVal(a) + intVal(b);
}, 0 );
// Total over this page
pageTotal = api
.column( 0, { page: 'current'} )
.data()
.reduce( function (a, b) {
return intVal(a) + intVal(b);
}, 0 );
// Update footer
$( api.column( 0 ).footer() ).html(
'Total Impulse: '+pageTotal
/*+' ( €'+ total +' total)'*/
);
}
} );
} );