【发布时间】:2011-02-21 17:41:43
【问题描述】:
Datatables 可以选择每页显示的记录数。默认值从 10、25、50 和 100 开始。如何将其更改为从 5 而不是 10 开始? 在我当前的设计中,10 条记录有点太多了,占用了很多空间。 谢谢!
【问题讨论】:
标签: javascript datatable
Datatables 可以选择每页显示的记录数。默认值从 10、25、50 和 100 开始。如何将其更改为从 5 而不是 10 开始? 在我当前的设计中,10 条记录有点太多了,占用了很多空间。 谢谢!
【问题讨论】:
标签: javascript datatable
完全正确的答案是同时使用两者并将长度显示为 5:
$(document).ready( function(){
$('#table').dataTable({
"iDisplayLength": 5,
"aLengthMenu": [[5, 10, 25, 50, -1], [5, 10, 25, 50, "All"]]
});
});
如果您只使用“iDisplayLength”,那么稍后或页面加载时,下拉列表将不会在选项中具有该长度(相反,您将看到第一个选项,默认为 IE 10)。如果您只使用“aLengthMenu”,那么您的结果仍将默认为 10,而不是第一个菜单选项。
【讨论】:
pageLength 和 lengthMenu
您将希望在初始化 DataTable 对象时使用 iDisplayLength 参数。这是他们在文档中列出的示例:
$(document).ready( function() {
$('#example').dataTable( {
"iDisplayLength": 50
} );
} )
更多信息可以在这里找到:http://www.datatables.net/usage/options
【讨论】:
pageLength 和 lengthMenu
$.extend(true, $.fn.dataTable.defaults, {
"lengthMenu": [[5, 10, 15, 20, 25], [5, 10, 15, 20, 25]],
"pageLength": 5
});
【讨论】:
答案解决了我需要以下场景的问题
$(document).ready( function(){
$('#table').dataTable({
"aLengthMenu": [[10, 25, 50, 100], ["10 Per Page", "25 Per Page", "50 Per Page", "100 Per Page"]]
});
});
【讨论】:
我意识到这个问题很老,但接受的答案并没有回答 OP 的问题。
答案是在初始化dataTable时覆盖aLengthMenu选项。见这里:http://datatables.net/examples/advanced_init/length_menu.html
【讨论】:
对于 1.9 的数据表来说几乎没有
“iDisplayLength”:50
【讨论】:
您可以简单地添加:
"lengthMenu": [
[10, 25, 50, -1],
[10, 25, 50, "All"]
] // remember to add "," if you initialize more option manually
或者如果您只想添加此选项
$('#tablename').dataTable( {
"lengthMenu": [ [10, 25, 50, -1], [10, 25, 50, "All"] ]
} );
这将为您提供一个下拉菜单,以选择分页中每页的记录数。
【讨论】: