2016-07-08 40 views
1

我有以下代碼數據表 - CSV僅導出當前行

<script type="text/javascript"> 
      $(document).ready(function() { 
      $('#example').DataTable({ 
       "processing": true, 
       "serverSide": true, 
       "ajax": "/functions/ajax.asp", 
       "ordering": false, 
       "bFilter": false, 
       "dom": "<'row' <'col-md-12'B>><'row'<'col-md-6 col-sm-12'l><'col-md-6 col-sm-12'f>r><'table-scrollable't><'row'<'col-md-5 col-sm-12'i><'col-md-7 col-sm-12'p>>", // horizobtal scrollable datatable 
       buttons: [ 
       'copy', 'csv', 'excel', 'pdf', 'print' 
      ] 
       }); 
     }); 
      </script> 

我周圍有數百行,但是當我選擇一個選項,如CSV,只有出口的是在屏幕上。

任何想法?

感謝

+0

可能出現[導出ajax/serverside數據表的最佳方法](http://stackoverflow.com/questions/38067826/best-way-to-export-ajax-serverside-datatable) –

回答

-1

這裏的問題是,你正在使用服務器端的處理,所以客戶端的數據表插件只能訪問數據在屏幕上輸出!你必須定製一些東西來從服務器獲取這些數據。

退房這個職位的一個簡單的例子:Server side excel export with DataTable

-1

這是預期的數據表導出按鈕行爲。他們總是簡單地導出當前顯示在屏幕上的數據。如果您希望允許用戶導出所有數據(並且不想編寫自定義導出功能 - 如果需要,請參閱@ Adam的答案),請考慮在您的DataTable中添加一個lengthMenu選項。這將允許用戶更改每頁顯示的記錄數,這可以讓他們顯示/導出所有記錄。 lengthMenu參數的語法如下。

"lengthMenu": [ [10, 25, 50, -1], [10, 25, 50, "All"] ] 

第一陣列示出了要顯示的記錄每個選項的數目(在這種情況下,10,25,50,和所有的(-1是全部)),和第二陣列是什麼應顯示在用戶的下拉菜單中。

有關該主題的更多詳細信息,請參閱this stack overflow question