【问题标题】:DataTable not showing pagination buttons and records info - JQueryDataTable 不显示分页按钮和记录信息 - JQuery
【发布时间】:2016-04-08 12:42:55
【问题描述】:

使用 Datatable 插件进行分页,我无法让它显示分页按钮和记录信息(“显示 Y 记录中的 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 */
            },

        }
    });

【问题讨论】:

  • 它们是否在 DOM 中但被隐藏了?
  • <div class="dataTables_paginate paging_simple_numbers" id="leadDetailTable_paginate"></div> DOM 中只显示这个 div。
  • 控制台中有警告吗?
  • 嗨@Anss,你有没有为你提到的事情找到任何解决方案?我也面临同样的问题。
  • 你好@Jivan,我不太记得我是怎么过去的,但我强烈建议你检查下面给出的答案,ajax 请求的响应必须包含所有必需的参数。

标签: javascript jquery pagination datatables


【解决方案1】:

您是否尝试过添加以下参数:

 "bPaginate":true,
 "sPaginationType":"full_numbers",
 "bLengthChange": true,
 "bInfo" : true

【讨论】:

  • 没用。我看到的所有例子都不需要特殊的分页参数,我猜它默认是打开的,你确定我给出的记录总数是正确的吗?
【解决方案2】:

添加以下属性

"pagingType": "full_numbers"

【讨论】:

  • 我正在尝试在 DataTables 文档中找到的这些选项,但到目前为止都没有奏效。
【解决方案3】:

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>
}

如果您不希望它说“从 x 条记录中过滤”,则在过滤后计算记录并将 recordsTotal 和 recordsFiltered 都设置为该值。

【讨论】:

    【解决方案4】:

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

    【讨论】:

      猜你喜欢
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2021-05-05
      • 2016-12-31
      • 2019-09-06
      相关资源
      最近更新 更多