각 열의 합계 값을 클래스 "sum"과 함께 작은 꼬리말로 삽입하는 데 문제가 있습니다.DataTables.net 테이블 열 합계 바닥 글
코드 (더 많거나 적은 DataTables.net에서 직접 찍은) 이동 :
var table = $('#example').DataTable();
table.columns('.sum').each(function (el) {
var sum = table
.column(el)
.data()
.reduce(function (a, b) {
return parseInt(a, 10) + parseInt(b, 10);
});
$(el).html('Sum: ' + sum);
});
"합"정확한 값을 가지고 있지만 어떻게 든 바닥 글 삽입되지 않습니다! 나는. 그것의 -element는 비어 있습니다.
아래 스 니펫은 정상적으로 작동하지만 각 열을 클래스 합계로 합산하려고합니다.
var table = $('#example').DataTable();
var column = table.column(4);
$(column.footer()).html(
column.data().reduce(function (a, b) {
return parseInt(a, 10) + parseInt(b, 10);
})
);
///////////////////////////////////// ///////////////////////////////
EDIT - 해결 방법 :
코드를 DataTable이 초기화 된 위치로 이동하고 대신 footerCallback을 사용하여 이동했습니다. 코드 아래 참조 :
"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 this page
pageTotal = api
.column('.sum', { page: 'current' })
.data()
.reduce(function (a, b) {
return intVal(a) + intVal(b);
}, 0);
// Update footer
$(api.column('.sum').footer()).html(pageTotal);
}
지금 난 그냥
js 바이올린을 만들고 우리와 공유하십시오. –
다음과 같은 것이 있습니다 : http://jsfiddle.net/d49c8jLL/ – skepnaden
관련성이 있거나 그렇지 않을 수 있습니다. JQuery를 사용하여 DataTables 부트 스트랩 js를 잘못된 순서로로드하는 것으로 보입니다. (유사한 js 오류에 따라 : http://stackoverflow.com/questions/26165263/datatables-uncaught-typeerror-cannot-read-property-defaults-of-undefined). 나는 그것들을 바꿨고 이제 스타일은 진행을 나타 내기 위해 조금 바뀌었지만 어떤 열에서도 tfoot 요소의 합계 값은 여전히 남아 있지 않습니다. – skepnaden