繁体   English   中英

每页更改限制后重新渲染分页

[英]Re-render pagination after change limit per page

我有一个数据表:

$(document).ready (function() {
    $('#table_list').DataTable ({
        "bJqueryUI": true,
        "bProcessing": true,
        "bServerSide": true,
        "sAjaxSource": "./action/list_json.php",
        "iDisplayLength": 50, // default nb to display 
        "aaSorting": [],
        "oLanguage": {
            "sLengthMenu": 'Show <select id="list"><option value="25">25</option><option value="50">50</option><option value="100">100</option></select> lines'
        },
        "aoColumns": [
            { "bVisible":false }, { "bSortable":false }, { "bSortable":false }, { "bSortable":false }, { "bSortable":false }
        ]
    });
}) ;

更改每页显示的行数后,我返回了很好的信息:

....
"iTotalRecords" => "28"
"iTotalDisplayRecords" => 25

但是鉴于我有一个激活第 1 页的分页,通常我应该有一个 2 页的分页:第一页有 25 个项目,第二页有 3 个项目;

但我有类似的东西

在此处输入图像描述

问题是没有完成分页的渲染; 你能帮我一些建议吗?

您需要在数据表配置中添加以下两个属性

"bPaginate":true,
"sPaginationType":"full_numbers",

你的代码应该看起来像

$(document).ready (function() {
    $('#table_list').DataTable ({
        "bJqueryUI": true,
        "bProcessing": true,
        "bServerSide": true,
        "sAjaxSource": "./action/list_json.php",
        "bPaginate":true,
        "sPaginationType":"full_numbers",
        "iDisplayLength": 50, // default nb to display 
        "aaSorting": [],
        "oLanguage": {
            "sLengthMenu": 'Show <select id="list"><option value="25">25</option><option value="50">50</option><option value="100">100</option></select> lines'
        },
        "aoColumns": [
            { "bVisible":false }, { "bSortable":false }, { "bSortable":false }, { "bSortable":false }, { "bSortable":false }
        ]
    });
}) ; 

注意:如果"sPaginationType":"full_numbers"不起作用,请使用"pagingType": "full_numbers" ”。 这取决于您的数据表插件版本

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM