DataTable没有显示分页按钮和记录信息--JQuery

时间:2016-04-08 12:42:56

标签: javascript jquery pagination datatables

使用Datatable插件进行分页,我无法显示分页按钮和记录信息(“显示X记录中的X”)。当我从表格上方的下拉菜单中选择页面大小时,它正确地获取记录,但由于某种原因,它没有显示分页按钮。

我的猜测是它必须知道表的总记录数,我在“iTotalRecords”中给出它:10000“部分,我的表中有1000条记录,但它仍然没有使用。我到底错过了什么?

正确传递start(页码)和length(页面大小)参数。 以下是我的代码,

$('#leadDetailTable').dataTable({
        "processing": true,
        "serverSide": true,
        "info": true,
        "stateSave": true,
        "lengthMenu": [[10, 50, 100, 500], [10, 50, 100, 500]],
        "iTotalRecords": 10000,
        "iDisplayLength": 10,
        "searching": false,
        "scrollY": false,
        "scrollX": false,
        "ajax":{
            type: 'POST',
            url: '@Url.Action("SearchLeads", "ResourceManagement")',
            data: args,
            success: function (result) {
                /* Do things with result */
            },

        }
    });

3 个答案:

答案 0 :(得分:0)

添加以下属性

"pagingType": "full_numbers"

答案 1 :(得分:0)

ajax请求返回的响应是什么?它应包括以下内容:

{
    data: <the array of row data>,
    draw: <the same value the request had for its draw value>,
    recordsTotal: <the total number of records>,
    recordsFiltered: <the total number of records after filtering>
}

如果您不希望它说出&#34;从x记录&#34;过滤,则在过滤后计算记录,并将recordsTotal和recordsFiltered设置为该值。

答案 2 :(得分:0)

我遇到了同样的问题,这是因为我从服务器端返回了错误的recordsFiltered值。确保recordsTotal值表示表中的记录(行)数,而recordsFiltered值表示总行中应隐藏的行数。 DataTables使用此信息来创建分页按钮。