在默认情况下,我可以使用下面的脚本在第2页加载datatable。
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)。我怎样才能做到这一点呢?任何帮助都将不胜感激。
发布于 2016-04-12 17:11:15
只需从页码中计算出大小,如下所示:
"displayStart": (pageNumber - 1) * 10pageNumber = 2可产生10.3 => 20等。
发布于 2018-12-31 06:01:25
虽然这个问题已经回答了,但我的回答仍然对某人有帮助。由于获得要发送和获取数据的页码的可能性最小,所以还可以使用datatable的属性保存表的状态。
$(document).ready(function() { $('#example').DataTable( { stateSave: true } ); });的更多描述可以在这里找到
发布于 2016-04-12 18:51:55
您可以按建议计算它,但问题是如果要更改页面大小,则必须在DataTable设置和公式中更改它。
为了避免这种情况,还可以使用本机page()函数:https://datatables.net/reference/api/page()#Example
下面是一个如何使用它的示例:
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上阅读更多内容。
https://stackoverflow.com/questions/36578764
复制相似问题