2017-01-17 1 views
0

私は複数のデータテーブルを持っており、同様の設定を持つ場所で1つのjsを作成しました。私はテーブルの各IDの代わりに、すべてのテーブルのクラスを使用します。異なるスクリプトファイルでデータテーブルを再初期化

違いがある各データテーブルに対して特定のjqueryを作成する場合はどうなりますか? いくつかの列は選択されていない必要がある間に選択する必要があります。

私は各テーブルにIDを使用しましたが、再初期化はできません。 私もbdestroy :trueを使用してみましたが、1つは、ここで

無効になっていることは、私はクラスを使用し、私の均一なスクリプトです:ここでは

<script type="text/javascript">   
$(document).ready(function() { 
$('.datatables').dataTable(  
    {   
     'initComplete': function(settings){ 
     var api = new $.fn.dataTable.Api(settings); 

     api.columns().header().each(function(column){ 
     if($(column).text() === 'Company'){ 
      $(column).text("Apple"); 
     } 
      if($(column).text() === 'Note'){ 
      $(column).text("Description"); 
     } }); }, 
    "pagingType": "full_numbers", 
      "oSearch": {"bSmart": false}, 
    dom: '<"coll"B><"search"f><"table"t><"info" i><"list"l><"pag"p>', 

buttons: [{   
     extend: 'collection', 
     text: 'Esporti',   
    buttons: [ { 
      extend: 'excel', 
      text: 'Excel', 
      exportOptions: { 
       modifier: { 
        selected: true 
          }}},{ 
      extend: 'pdf', 
      text: 'PDF', 
      exportOptions: { 
       modifier: { 
        selected: true 
          }}} ]}, ] 
     }); }); 
</script> 

は、私は、各テーブルのテーブルIDを使用して、各ページのスクリプトです:その代わりに、共通のオプションとIDを指定するには、クラス名の組み合わせを使用しての事前

答えて

0

<script> 
$(document).ready(function() { 
$('#circuiti_table').dataTable({ 
     select: { 
     style: 'multi', 
     selector: ' tr>td:nth-child(4), tr>td:nth-child(5), tr>td:nth- child(6), tr>td:nth-child(7)' 
     } }); }); 
    </script> 

感謝固有のオプションを指定する別の方法をお勧めします。

$.fn.dataTable.defaultsオブジェクトを使用して、すべてのテーブルに共通のオプションを指定します。次に、各ページで、IDを使用してテーブルを初期化しますが、異なるオプションのみを含めます。例えば

// jQuery DataTables: Common settings 
$.extend(true, $.fn.dataTable.defaults, { 
    "searching": false, 
    "ordering": false 
}); 

// jQuery DataTables: Individual table 
$(document).ready(function() { 
    $('#example').DataTable(); 
}); 

詳細についてはSetting defaultsを参照してください。

関連する問題