8

fnFooterCallback を使用して、列の金額を合計として合計しようとしていますが、まだ把握できない部分は、aaData からうまく取得しているそのページの合計が必要なことです。

ajax出力を使用してaaDataで取得した出力でフッターを表示する方法について何か考えはありますか?

4

2 に答える 2

12

これがあなたが探しているものかどうかはわかりませんが、試してみます。

フッターに表示するには、このコードを<thead>andの後に配置します。<tbody>

<tfoot>
  <tr>
    <th>Total:</th> 
    <th></th>
  </tr>
</tfoot>

そのため、フッターに表示できます。

これを開始に追加するよりも:

"fnFooterCallback": function ( nRow, aaData, iStart, iEnd, aiDisplay ) {
    /*
     * Calculate the total market share for all browsers in this table (ie inc. outside
     * the pagination)
     */
    var iTotalMarket = 0;
    for ( var i=0 ; i<aaData.length ; i++ )
    {
        iTotalMarket += aaData[i][1]*1;
    }

    /* Calculate the market share for browsers on this page */
    var iPageMarket = 0;
    for ( var i=iStart ; i<iEnd ; i++ )
    {
        iPageMarket += aaData[ aiDisplay[i] ][1]*1;
    }

    /* Modify the footer row to match what we want */
    var nCells = nRow.getElementsByTagName('th');
    nCells[1].innerHTML = parseInt(iPageMarket);
}

計算する列の数値を変更しaaData[i][1]ます (1 ではなく 0 から始まります)。

注: 行に特殊文字がある場合、これは機能しません。カットする必要があります。

于 2012-12-03T10:50:39.380 に答える