首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在加载数据时传递页码,而不是页大小

如何在加载数据时传递页码,而不是页大小
EN

Stack Overflow用户
提问于 2016-04-12 16:13:31
回答 3查看 4.8K关注 0票数 2

在默认情况下,我可以使用下面的脚本在第2页加载datatable。

代码语言:javascript
复制
jQuery(document).ready(function() {
        dataTable =  jQuery('#tableid').DataTable( {
        processing: true,
        serverSide: true,
        "displayStart": 10,
"ajax":{
  url :"load_browser_two_data.php,
  type: "POST" 
        }
})
});

通过使用上面的脚本,我可以加载第二页。但是我需要传递页码而不是页面大小("displayStart":10)。我怎样才能做到这一点呢?任何帮助都将不胜感激。

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2016-04-12 17:11:15

只需从页码中计算出大小,如下所示:

代码语言:javascript
复制
"displayStart": (pageNumber - 1) * 10

pageNumber = 2可产生10.3 => 20等。

票数 3
EN

Stack Overflow用户

发布于 2018-12-31 06:01:25

虽然这个问题已经回答了,但我的回答仍然对某人有帮助。由于获得要发送和获取数据的页码的可能性最小,所以还可以使用datatable的属性保存表的状态。

$(document).ready(function() { $('#example').DataTable( { stateSave: true } ); });的更多描述可以在这里找到

save.html]

票数 2
EN

Stack Overflow用户

发布于 2016-04-12 18:51:55

您可以按建议计算它,但问题是如果要更改页面大小,则必须在DataTable设置和公式中更改它。

为了避免这种情况,还可以使用本机page()函数:https://datatables.net/reference/api/page()#Example

下面是一个如何使用它的示例:

代码语言:javascript
复制
var table = $('#example').DataTable({
    "deferLoading": 0   /* This won't load initial data */

    // Your config comes here
    // ...
});

// Get the data for page 7 and draw the DataTable
table.page( 7 ).draw( false );


// For reference...

// Go to next page 
table.page( 'next' ).draw( 'page' );

// Go to previous page
table.page( 'previous' ).draw( 'page' );

您还可以在deferLoading上阅读更多内容。

票数 1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/36578764

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档