comment la somme de certaines lignes dans la table de données à l'aide de footercallback
Je suis en utilisant les données de la Table. Je veux somme de certaines colonnes et je veux montrer dans le bas du rapport. Je recherche beaucoup de choses. Ensuite, j'ai trouvé le nouveau pied de page en fonction de rappel au Tableau de données. J'ai utilisé. Mais tout de même ma sortie n'est pas encore prêt..
Mon code comme suit,
function Databind(Pdestroy) {debugger;
var destroy = false;
if (Pdestroy == "1")
destroy = true;
var oTable = $('.datatable').dataTable({
"bJQueryUI": true,
'bServerSide': true,
"bDestroy": destroy,
"iDisplayLength": 10,
"sPaginationType": "full_numbers",
'sAjaxSource': '<%= Url.Action("listcount", "Home") %>',
"bFilter": true,
"aoColumnDefs": [{ 'bSortable': false, 'aTargets': [0, 1, 2, 7, 8, 9, 10, 11]}],
"fnRowCallback": function (nRow, aData, iDisplayIndex) {
var oSettings = oTable.fnSettings();
$("td:first", nRow).html(oSettings._iDisplayStart + iDisplayIndex + 1);
return nRow;
},
"footerCallback": function (row, aData, start, end, iDisplayIndex) {
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 (a, b) {
return intVal(a) + intVal(b);
});
//Total over this page
pageTotal = api.column(4, {
page: 'current'
})
.data()
.reduce(function (a, b) {
return intVal(a) + intVal(b);
}, 0);
//Update footer
$(api.column(5).footer()).html(
'$' + pageTotal + ' ( $' + total + ' total)');
}
});
}
Ici Row
montre pas défini.Et aussi il n'ya pas d'erreur indiquant. Mais la sortie n'est pas à l'affiche. J'ai joint la capture d'écran de la sortie..
Pour obtenir les valeurs que dois-je faire de plus?
OriginalL'auteur PoliDev | 2015-10-06
Vous devez vous connecter pour publier un commentaire.
Utiliser le somme plugin plutôt que de réinventer la roue 🙂
puisque vous voulez juste de mettre à jour un certain pied de colonne à chaque fois que le tableau est redessiné, il vous suffit d'un simple
drawCallback
:OriginalL'auteur davidkonrad