我在使用以下内容时遇到主题错误:
$("#example1").DataTable().fnPageChange(localStorage.getItem('page'),true);
据我所知,它保存了用户点击的datatable的最后一页。如果用户点击了datatable的第3页,导航到另一页,然后返回到datatable,那么它仍然在datatable的第3页上。
而且起作用了。将保存datatable的最后一页。
唯一的问题是,即使上面的工作,我正在控制台中得到以下错误:
Uncaught TypeError: $(...).DataTable(...).fnPageChange is not a function
我不知道为什么。
以下是我拥有的其他datatable设置:
"iDisplayLength": 50,
"order": [[ 1, "desc" ]],
"paging": true,
"scrollY": 300,
"scrollX": true,
"bDestroy": true,
"stateSave": true,
"sPaginationType":"full_numbers",
"autoWidth": false,
"deferRender": true,
"dom": 'Bfrtip',
为什么我会出现上面的控制台错误,如何修复它?
您使用的“statesave”:true
选项允许用户在完全离开网页后返回DataTable的第3页,然后返回。
它还保存筛选器和排序选择。
如果您希望手动执行某项操作,而“stateSave”:true
不为您处理该操作,那么您可以使用DataTables页面更改事件。文档给出了一个示例:
$('#example').on( 'page.dt', function () {
var info = table.page.info();
$('#pageInfo').html( 'Showing page: '+info.page+' of '+info.pages );
} );
否则,您可以删除抛出错误的行--并且状态保存不应受到影响。
关于fnpagechange
-这是一个旧的插件,已从数据表中删除-您可以在这里看到关于它的注释。