2017-02-28 8 views
0

DataTableでCodeigniterとajaxリクエストを使用してデータを取得し、DataTableの印刷エクスポートオプションを使用してデータを印刷しようとしています。しかし、フッターは印刷物には現れません。DataTableの印刷エクスポートオプションにデータテーブルフッターが含まれていません

DataTableでの印刷にフッターを含めるにはどうすればよいですか?ここで

私のコードです:

function data_table_report(dateselected){ 
    $("#dataTables-report").dataTable().fnDestroy(); 
    table = $('#dataTables-report').DataTable({ 
     "ajax": { 
     "url": "<?php echo site_url('patients_report/dataTable_report/')?>"+dateselected, 
     "type": "POST", 
     }, 
     responsive: true, 
     bInfo: false, 
     dom: 'Bfrtip', 
     buttons: [{ extend: 'print', 
      exportOptions: { 
       columns: ':visible' 
       } 
     }, 
     'colvis'], 
     columnDefs: [ { 
      targets: -1, 
      visible: false} 
     ] 
    }); 
} 

答えて

0

下に示すように、これを試してみてくださいフッターのプロパティを追加します。

"fnInitComplete": function (oSettings, json) {   
    myfooter = this.find('tfoot')[0].innerHTML; 
    new $.fn.dataTable.Buttons(this, { 
    buttons: [   
     { 
      extend: 'print', 
      exportOptions : { 
       columns: ':not(.notForPrint)' 
      }, 
      customize: function (win) { 
       $(win.document.body) 
        .css('font-size','10pt') 
        .css('font-family','arial'); 
       $(win.document.body).find('table') 
        .addClass('compact') 
        .css('font-size', 'inherit'); 
       $(win.document.body).find('tfoot')[0].innerHTML = myfooter ; 
       win.print(); 
       setTimeout(win.close(),500); 
      } 
     } 
    ] 
    }); 
    this.DataTable().buttons().container().insertBefore('#example_filter'); 

}、

+0

説明を追加 – Billa

0

buttons: [{ extend: 'print', 
      footer: true, 
      exportOptions: { 
       columns: ':visible' 
       } 

}]

関連する問題