如何显示JQuery DataTable的长度菜单?激活导出(COPY,EXCEL,PDF)后,它消失。我已经添加了lengthMenu
,但是没有显示下拉列表。这就是我所做的:
$(document).ready(function() {
var table = $('#example').DataTable( {
lengthChange: false,
buttons: [ 'copy', 'excel', 'pdf' ],
responsive: true,
'columnDefs': [ {
'targets': [6], /* column index */
'orderable': false, /* true or false */
'lengthMenu': [[10, 25, 50, -1], [10, 25, 50, "All"]]
}]
} );
table.buttons().container().appendTo( '#example_wrapper .col-md-6:eq(0)' );
} );
我正在通过CDN使用jquery 3.3.1和datatables 1.10.19。
答案 0 :(得分:0)
您应该添加dom
:
dom:'Bflrtip'
read more about datatables dom
和 lengthMenu 的位置应固定
和 lengthChange 应该为true
:
$(document).ready(function() {
var table = $('#example').DataTable( {
lengthChange: true,
dom: 'Bflrtip',
buttons: [ 'copy', 'excel', 'pdf' ],
responsive: true,
'columnDefs': [ {
'targets': [6], /* column index */
'orderable': false, /* true or false */
}],
'lengthMenu': [[10, 25, 50, -1], [10, 25, 50, "All"]]
} );
table.buttons().container().appendTo( '#example_wrapper .col-md-6:eq(0)' );
} );
答案 1 :(得分:0)
尝试添加dom
之类的dom: 'Blfrtip'
参数。
另请参见documentation
$(document).ready(function() {
var table = $('#example').DataTable( {
lengthChange: true,
buttons: [ 'copy', 'excel', 'pdf' ],
responsive: true,
dom: 'Blfrtip',
columnDefs: [ {
targets: [6], /* column index */
orderable: false, /* true or false */
lengthMenu: [[10, 25, 50, -1], [10, 25, 50, "All"]]
}]
} );
table.buttons.container.appendTo( '#example_wrapper .col-md-6:eq(0)' );
} );
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<script src="//cdn.datatables.net/1.10.19/js/jquery.dataTables.min.js"></script>
<link href="//cdn.datatables.net/1.10.19/css/jquery.dataTables.min.css" rel="stylesheet"/>
<table id="example">
<thead>
<tr>
<th>Example</th>
<th>Example</th>
<th>Example</th>
<th>Example</th>
<th>Example</th>
<th>Example</th>
<th>Example</th>
</tr>
</thead>
<tbody>
<tr>
<td>Example</td>
<td>Example</td>
<td>Example</td>
<td>Example</td>
<td>Example</td>
<td>Example</td>
<td>Example</td>
</tr>
</tbody>
</table>
答案 2 :(得分:0)
尝试添加如下所示的dom设置:
$(document).ready(function() {
var table = $('#example').DataTable( {
lengthChange: false,
buttons: [ 'copy', 'excel', 'pdf' ],
responsive: true,
dom: 'lfrtip',
'columnDefs': [ {
'targets': [6], /* column index */
'orderable': false, /* true or false */
'lengthMenu': [[10, 25, 50, -1], [10, 25, 50, "All"]]
}]
} );
table.buttons().container().appendTo( '#example_wrapper .col-md-6:eq(0)' );
} );
有关更多信息,请参见关于此forum discussion
的答案