2016-08-04 3 views
1

私はテーブルからdrwanの画面にデータを取得しようとしています。データテーブルは、描画データを取得します

各描画でテーブルデータを取得できますが、画面に描画されるデータセットではなく、フルデータセットです。

$(document).ready(function() { 
    var table = $('#myTable').DataTable({ 
     dom: 'Blfrtip', 
     buttons: [ 
      { 
       extend: 'excel', 
       text: 'Download Excel' 
      } 
     ] 
    });  
    $('#myTable').on('draw.dt', function(){ 
     console.log(table.data()); 
    }); 
    $('#search-category').bind('input propertychange',function(){ 
     table 
     .column(3) 
     .search(this.value) 
     .draw(); 
    }), 
    $('#search-sub-category').bind('input propertychange', function(){ 
     table 
     .column(4) 
     .search(this.value) 
     .draw(); 
    }) 
}); 

私の目的は、実際にユーザーに表示されるテーブルデータを取得することです。

https://jsfiddle.net/qbcnsjo8/

+0

データはどのように入力されますか?確かに、入力の前にそのデータを保存し、後で使用するためにそのデータを一方の側に保持することができます。 –

+0

考えられるのは、テーブルがフィルタリングされると、結果のデータをJavaScriptのクライアント側で編集できるということです。フィルタ用語を保存して完全なデータセットを再フィルタリングするのではなく、データテーブルにこの機能が含まれており、ホイールを再開発したくないと私は考えています。 – user3770935

答えて

1

使用rows().data() APIメソッドは、一部または特定の基準に基づいて、すべての行のデータを取得します。検索に適用して行のデータを取得するには

:検索で現在のページの行のデータを取得するには

table.rows({ search: 'applied' }).data(); 

は適用:

table.rows({ 'page': 'current', search: 'applied' }).data(); 

documentationから:

返された配列内のデータの順序、およびデータが取得された行(検索された行、表示行e tc)は、選択された行を取得するために使用されるrows()セレクタのselector-modifierオプションによって制御されます。

コードとデモンストレーションについては、updated exampleを参照してください。

+0

乾杯、完璧な解決策。私はこれを見落として遊んでいた:https://datatables.net/reference/type/column-selector# {整数}:visIdx – user3770935

関連する問題