Witajcie,
Mam problem z podsumowaniem kolumn w DataTable:
https://datatables.net/examples/advanced_init/footer_callback.html
Niby js błędów nie zwraca ale nie mam żadnego podsumowania:
skrypt wygląda jak poniżej:
<script>
$(document).ready(function() {
'use strict'
$('#tfv').dataTable(
{
"bJQueryUI": false,
"bStateSave": true,
"sPaginationType": "full_numbers",
"bLengthChange": true,
"sDom": 'Rfrtlip',
"iDisplayLength": 100,
"oLanguage": {"sLengthMenu": "Wyświetlanie: _MENU_ rekordów na stronie",
"sZeroRecords": "Nic nie znaleziono",
"sInfo": "Wyświetlone od _START_ do _END_ z _TOTAL_ rekordów",
"sInfoEmpty": "Wyświetlone od 0 do 0 z 0 rekordów",
"sInfoFiltered": "(filtered from _MAX_ total records)",
"oPaginate": {"sFirst": "Pierwsza",
"sLast": "Ostatnia",
"sNext": "Następna",
"sPrevious": "Poprzednia"}
},
"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(4)
.data()
.reduce(function (total, b) {
b = $(b.replace('$', '')).text();
return total + parseInt(b);
},0);
// Total over this page
pageTotal = api.column(4, {
page: 'current'
})
.data()
.reduce(function (total, b) {
b = $(b.replace('$', '')).text();
return total + parseInt(b);
}, 0);
// Update footer
$(api.column(4).footer()).html(
'$' + pageTotal + ' ( $' + total + ' total)');
}
}
).yadcf
(
[
{
column_number:1,
filter_type: "multi_select",
select_type: 'select2'
}
]
)
SyntaxHighlighter.all();
});</script>
footer wygląda mniej więcej tak: (HAKUNAMATATA wpisałem do testu aby sprawdzić czy cokolwiek się wyświetla)
<tfoot><th colspan="5">HAKUNAMATATA<div id="paging"></div></th></tfoot>
Czy możecie coś podpowiedzieć? Konsola w chrome czysta bez żadnych błędów JS.