状态保存 - 再次加载页面时还原表格状态
开启或者禁用状态储存。当你开启了状态储存,Datatables会存储一个状态到浏览器上, 包含分页位置,每页显示的长度,过滤后的结果和排序。当用户重新刷新页面,表格的状态将会被设置为之前的设置。
数据储存在浏览器上的状态信息是使用 localStorage或者sessionStorage Html5 APLs。 Datatable的属性stateDuration 用来设置使用那个api (localStorage:0 或者更高 或者 sessionStorage: -1)
使用table的dom id 和当前页面的路径作为每个表状态数据,信息储存的唯一标示。如果 table dom 的id 或者页面的url改变了,状态信息将丢失。
请注意:这个使用了Html5 api 来存储数据,意味着这个参数的使用在IE6/7下会失效,因为IE6/7不支持这些api。
使用cookie或者把状态保存在服务器上,可以通过使用
stateSaveCallbackOption
和
stateLoadCallbackOption
选项。
这个选项接受以下类型:
false
打开状态保存:
$('#example').dataTable( { "stateSave": true } );
根据Datatables的实例id来读取和储存页面上保存的状态:
$('#example').dataTable( { stateSave: true, stateSaveCallback: function(settings,data) { localStorage.setItem( 'DataTables_' + settings.sInstance, JSON.stringify(data) ) }, stateLoadCallback: function(settings) { return JSON.parse( localStorage.getItem( 'DataTables_' + settings.sInstance ) ) } } );
下面的选项是直接相关的,也可能是您的应用程序的开发非常有用。
Translation from DataTables.net, with permission