2016-04-29 115 views
2

datatables我希望能夠隱藏所有列,但似乎無法獲得正確的語法。datatables +隱藏所有列按鈕

從下面的代碼和上面的鏈接中,創建一個顯示所有列的按鈕。有沒有辦法寫這個,這樣我可以隱藏所有列?

 { 
      extend: 'colvisGroup', 
      text: 'Show all', 
      show: ':hidden' 
     } 

代碼:

$(document).ready(function() { 
    $('#example').DataTable({ 
     dom: 'Bfrtip', 
     buttons: [ 
      { 
       extend: 'colvisGroup', 
       text: 'Office info', 
       show: [ 1, 2 ], 
       hide: [ 3, 4, 5 ] 
      }, 
      { 
       extend: 'colvisGroup', 
       text: 'HR info', 
       show: [ 3, 4, 5 ], 
       hide: [ 1, 2 ] 
      }, 
      { 
       extend: 'colvisGroup', 
       text: 'Show all', 
       show: ':hidden' 
      } 
     ] 
    }); 
}); 

我試圖像下面的與其他的排列,更無須歡喜,任何人都可以提出建議,和/或如何我可能會發現它的文檔。

{ 
    extend: 'colvisGroup', 
    text: 'Show None', 
    visibility: false 
} 

回答

0

這個工作對我來說,雖然我不知道爲什麼0不顯示第一列。它也可以把它留空白show: [],

{ 
extend: 'colvisGroup', 
text: 'Show None', 
show: [0], 
hide: ['*'] 
} 
0

您首先需要確定的列數DataTable中綁定,然後將所有列知名度假一次。

var oTable = $('#example').DataTable(); 
var columnCounts = oTable.columns().nodes().length; 
for (var i=0; i<columnCounts; i++) { 
    oTable.fnSetColumnVis(i, false, false); 
} 
0
{ 
    extend: 'colvisGroup', 
    text: 'Show None', 
    hide: [':gt(1)'], 
    //show: [0, 1, 2], 
    //hide: [0, 1, 2], 
    //hide: ['*'] 
} 

這個工作對我來說,只有2列可見...