数据表分页号超出预期数目

时间:2019-07-19 03:08:07

标签: jquery datatables

我正在使用Jquery Datatables,并在使用Ajax进行延迟加载时遇到一些问题。

我的问题之一是页数超出了预期的页数。 例如:

我得到了1 to 10 of 82,我期望页码仅来自1, 2, 3, 4, ..., 8,但我却遇到了这个问题,而不是1, ..., 9, 10, 11,它们是活动按钮,根本不显示任何数据。

这是我对数据表设置的示例

$('#table').DataTable({
        processing: true, 
        serverSide: true, 
        deferLoading: totalData,   
        ajax: {
            url: url,
            type: 'GET',
            data: { data },
        autoWidth: false,
        responsive: true,
        ordering: false,
        scrollX: true,
        dom: "Bfrtip",
 });

 And the sample of the page here

3 个答案:

答案 0 :(得分:1)

pageLength: 10,添加到 DataTable ,然后重试:

$('#table').DataTable({
        processing: true, 
        serverSide: true, 
        deferLoading: totalData,  
        pageLength: 10, 
        ajax: {
            url: url,
            type: 'GET',
            data: { data },
        autoWidth: false,
        responsive: true,
        ordering: false,
        scrollX: true,
        dom: "Bfrtip",
 });

答案 1 :(得分:0)

如果最初的页数不正确,则totalData的值无效或不正确。

使用deferLoading选项时,totalData的值将确定显示的页面数。

答案 2 :(得分:0)

默认页面长度为10

分页号中的数据不正确,可能是服务器端处理的。

从数据库查询时,您可以检查服务器的网络JSON响应,并确保其遵循Datatable请求参数,尤其是startlength

Datatable Ajax请求参数的示例:

draw: 1
columns[0][data]: id
columns[0][name]: 
columns[0][searchable]: true
columns[0][orderable]: true
columns[0][search][value]: 
columns[0][search][regex]: false
columns[1][data]: file_name
columns[1][name]: 
columns[1][searchable]: true
columns[1][orderable]: true
columns[1][search][value]: 
columns[1][search][regex]: false
columns[2][data]: delivery_qty
columns[2][name]: 
columns[2][searchable]: true
columns[2][orderable]: true
columns[2][search][value]: 
columns[2][search][regex]: false
columns[3][data]: submission_status
columns[3][name]: 
columns[3][searchable]: true
columns[3][orderable]: true
columns[3][search][value]: 
columns[3][search][regex]: false
order[0][column]: 0
order[0][dir]: asc
start: 0
length: 10
search[value]: 
search[regex]: false
action: get_submission_data
_: 1563616425364

响应JSON格式示例:

{"draw":1,"recordsFiltered":0,"recordsTotal":0,"data":[{1,..},{2,..}]}