更改默认行数以显示在一个“页面”上

Posted

技术标签:

【中文标题】更改默认行数以显示在一个“页面”上【英文标题】:Change the default number of rows to display on one "page" 【发布时间】:2013-11-26 18:31:11 【问题描述】:

在使用 DataTables 的分页功能时,如何指定在单个“页面”上显示的行数?

【问题讨论】:

【参考方案1】:

对于 DataTables 版本 1.10.5 和更新版本,如 blog post announcing the integration of html5 data-* attributes 中所述,可以通过源 (HTML) 表通过 data-page-length 指定每页显示的行数属性:

<table data-page-length='25'>
     ...
</table>

对于 DataTables 1.10 和更新版本,如 Reference > Options > pageLength 中所述,可以通过 pageLength 属性指定每页显示的行数:

$('#example').dataTable( 
    "pageLength": 50
);

对于早于 1.10 版的 DataTables,如 DataTables > Usage > Options > iDisplayLength 中所述,可以通过 iDisplayLength 属性指定每页显示的行数:

$('#example').dataTable( 
    "iDisplayLength": 50
);

我的两分钱:使用data-* 方法。它允许您构建一个 dataTable 调用(您可以在整个应用程序中使用),同时提供配置每个单独表的行为方式的选项:

<!-- table with embedded custom configurations -->
<table class="apply_dataTable" data-page-length='25'>
     ...
</table>

<!-- table with different embedded custom configurations -->
<table class="apply_dataTable" data-page-length='50' data-order='[[2, "desc"]]'>
     ...
</table>

<!-- one javascript call enhances both tables above -->
<script>
    $('table.apply_dataTable').dataTable(); //one invocation of datatables treats each table they way it wants to be
</script>

【讨论】:

现在,如果data-page-length='25' 工作不正常,data-page-size='25' 将工作。【参考方案2】:

使用 lengthMenu 也可能有所帮助:

$(document).ready(function() 
$('#example').DataTable( 
    "lengthMenu": [[10, 25, 50, -1], [10, 25, 50, "All"]]
 );

);

https://datatables.net/examples/advanced_init/length_menu.html

【讨论】:

虽然这很有帮助,但它并不能回答问题。问题不是如何修改下拉菜单中可用的默认值集,而是如何在该下拉菜单中指定选定的值。 如果您要指定的长度不是默认的 lengthMenu 条目之一,这是最好的答案。否则,lengthMenu 显示为空白。 (如果您不想使用第一个 lengthMenu 值作为默认值,您仍然需要指定 pageLength)【参考方案3】:

10 条记录

$('#datatable').DataTable("pageLength": 10);

50 条记录

$('#datatable').DataTable("pageLength": 50);

所有记录

$('#datatable').DataTable("pageLength": -1);

【讨论】:

【参考方案4】:

使用 1.11 版 - 使用属性“数据显示”。

【讨论】:

【参考方案5】:

我们可以使用jquery设置属性,并在一个通用文件中添加。

$('.dataTablegrid').attr('data-page-length',50);

这将适用于整个项目的所有数据表

【讨论】:

oTable = $('#datatable').DataTable( "preDrawCallback": function( settings ) var api = this.api(); if(settings._iDisplayLength!="50") var len = api.page.len(50); );

以上是关于更改默认行数以显示在一个“页面”上的主要内容,如果未能解决你的问题,请参考以下文章

您能否将 Vuetify 数据表的“每页行数”“全部”值从默认的“-1”更改?

sonata_type_collection 设置页面加载时的默认行数

Excel的列数以数字格式查看

更改 Tumblr 默认主题显示页面链接的方式

计算其中的行数以找到特定值的行数[重复]

更改cpanel中的默认页面