2017-09-12 19 views
1

jquery datatable hide column機能が正しく動作するようになった。jquery datatableすぐに列を非表示

HTML

<a href="#" class="btn toggle-vis" data-column="1" id="hideColumn">Show/Hide</a> 

JS

$(document).ready(function() 
{ 
    var table = $('#example1').DataTable(); 

    $('a.toggle-vis').on('click', function(e) 
    { 
    e.preventDefault(); 
    var column = table.column($(this).attr('data-column')); 
    column.visible(! column.visible()); 
    }); 
} 

ユーザーが最初のページに入ったときに私は何をしたいのは、最初に列を非表示にされています。次のコードは、テーブルの2番目の列を非表示にします。列はクリックされたときにのみ表示されます。

この効果を得るためにコードを調整するにはどうすればよいですか?

ありがとうございます。

+1

'VAR列= TABLE.COLUMN($(この).ATTR( 'データ列'))試してみてください。clearshot66 @' – clearshot66

+0

- 感謝を。更新しました。 –

+0

あなたのHTMLはどこにありますか?隠したいものが見えますか? https://datatables.net/examples/api/show_hide.html – clearshot66

答えて

0

あなたがcolumnDefs

を使用する必要が

試してみてください。私はそれが動作しない理由はわからない

var table = $('#example1').DataTable(
{ 
    "columnDefs": [ 
     { 
      "targets": [ 2 ], 
      "visible": false 
     } 
    ] 
}); 

EDIT。コメントの中にここにコードを追加するとうまく表示されませんでした。 代わりにこれを試してみてください:

var table = $('#example1').DataTable(); 
table.column(1).visible(false); 
+0

お返事ありがとうございます。同時にエラーは発生しませんでしたが、同時に成功しませんでした。 –

+0

これは実際には列のインデックスがゼロであるため、2番目の列の[1]にする必要があります。 – biznetix

+0

はい、私もそれを試みましたが、成功はありません。 –

0

この

$(function() {  
    // To hide the table header during page load 
    $("#example1 tr th:nth-child(2)").hide(); 

    // To hide the 2nd column during page load  
    $("#example1 tr td:nth-child(2)").each(function() { 
     $(this).hide(); 
    }); 


    // Hide and show while clicking the link 
    $(".toggle-vis").click(function() { 
     var col = $(this).data("column"); 

     // Hide/Show the header 
     $("#example1 tr th:nth-child(" + col + ")").is(":visible") ? $("#example1 tr th:nth-child(" + col + ")").hide() : $("#example1 tr th:nth-child(" + col + ")").show(); 

     // Hide/Show the details 
     $("#example1 tr td:nth-child(" + col + ")").each(function() { 
      $(this).is(":visible") ? $(this).hide() : $(this).show(); 
     }); 
    }); 

}); 
関連する問題