이 두 가지 방법으로이 문제를 해결할 수 있습니다.
첫번째 방법
I 문제점을 해결하는 방법을 참조하여 아래와 같이 화상을 이용
(I는 C#으로 데이터베이스 [뷰 모델]에서 JSON 데이터를 판독하고, 서버 측 처리를 사용한다고 가정한다)
본인은 "양"열 합계 싶었던 "측정 유형"(마지막 열)! = 내 JSON 개체 목록을 통과 할 거라고 뷰 모델로 한 99 우선 추가했다. 열 합계 칼럼은 어떤 MeasureType = 99 행도 읽지 못했습니다.
본질적으로 JSON 개체에는 Amount 열 데이터를 읽는 두 개의 열이 있습니다. 하나는 이미지에 표시되고 다른 모든 표시는 내 바닥 글에 합치기 원하는 값만 읽는 것으로 표시됩니다.
while (MyDataReader.Read())
{
//get all other columns
//column with amount figures measuretype != 99
if (reportData.q_measuretype != 99)
{
reportData.amountNo99 = Convert.ToDecimal(String.Format("{0:0.00}", read["q_amount"]));
}
else
{
reportData.amountNo99 = 0;
}
list.Add(reportData);
}
그 단계를 수행 한 후 다음 footerCallback 함수 내 당신이 페이지에 행의 목록을 얻을 때 조건이 이미 설정되어 있기 때문에 그냥 눈에 보이지 않는 열을 합산하여 간단하게 할 수 있습니다
totalNettNo99 = api
.column(8, { page: 'current' }) //remember this is the last invisible column
.data()
.reduce(function (a, b) {
return intVal(a) + intVal(b);
});
그런 다음 볼 열 3에 그 합과 바닥 글을 업데이트 할 수 있습니다 (인덱스 2)
$(api.column(2).footer()).html(
'€' + totalNettNo99.toFixed(2)
);
,691,363 (210)
는 이미지에서 볼 수 있듯이, 기네스 파인트 만 행이 바닥 글에 합계를 총 "columnDefs"
"ajax": {
"url": "/Reports/loadTransactionList",
"type": "POST",
"datatype": "JSON"
},
"columnDefs": [
{
"targets": [8],
"visible": false,
"searchable": false,
"render": false
}
],
"columns": [
{
"data": "convertDateToString"
},
{
"data": "convertTimeToString"
},
{
"data": "q_receiptnumber"
},
에 표시 안함 열이 방법을 설정해야합니다. 그것의 조금 더 타이핑하지만 당신이 스크립트 솔루션으로 머리를 찢어왔다면 문제를 해결합니다.
두 번째 방법은
당신은 여기에 내 솔루션
https://stackoverflow.com/a/42215009/7610106
신용 nkbved
에 스크립트와 적은 입력 순전히 수행이 답변에 모습을 가질 수