我需要在进行javascript测试后显示和隐藏数据表的列,但它不能正常工作。
这是我的测试javascript:
if ( $('#commune_to_display').val()==""){
$('#utable td:nth-child(2)').hide();
$('#commune_to ').hide();
}
此测试仅在数据表的第一页中起作用,在分页之后列仍然可见。
我该如何解决?谢谢你的帮助
答案 0 :(得分:7)
您可以显示/隐藏列,如下所示。只需将3
和4
替换为您的实际列索引。
var table = $('#utable').DataTable();
table.column(3).visible(true); // To show
table.column(4).visible(false); // To hide
答案 1 :(得分:2)
这样的JavaScript代码:
$(document).ready(function() {
var table = $('#example').DataTable( {
"scrollY": "200px",
"paging": false
} );
$('a.toggle-vis').on( 'click', function (e) {
e.preventDefault();
// Get the column API object
var column = table.column( $(this).attr('data-column') );
// Toggle the visibility
column.visible( ! column.visible() );
} );
} );
像这样的HTML代码:
<table id="example" class="display" cellspacing="0" width="100%">
<thead>
<tr>
<th>Name</th>
<th>Position</th>
<th>Office</th>
<th>Age</th>
<th>Start date</th>
<th>Salary</th>
</tr>
</thead>
<tfoot>
<tr>
<th>Name</th>
<th>Position</th>
<th>Office</th>
<th>Age</th>
<th>Start date</th>
<th>Salary</th>
</tr>
</tfoot>
<tbody>
<tr>
<td>Tiger Nixon</td>
<td>System Architect</td>
<td>Edinburgh</td>
<td>61</td>
<td>2011/04/25</td>
<td>$320,800</td>
</tr>
</tbody>
</table>
您可以在此处查看并运行完整示例:https://datatables.net/examples/api/show_hide.html