2016-12-26 6 views
1

Когда я нажимаю на определенную запись со второй страницы моего datatable, она перенаправляет меня на другую страницу, и когда я возвращаюсь, она перенаправляет меня на страницу 1. Проблема здесь в том, что я хочу сохранить состояние и я хочу вернуться на страницу (Пример: 2), откуда я был перенаправлен.Угловые Datatables saveState не работает

.withOption('bStateSave',true) 
    .withOption('stateSaveCallback', function (aoData, oSettings) { 
     console.log('performing save of settings'); 
     localStorage.setItem('DataTables_home', JSON.stringify(aoData)) ; 
    }) 
    .withOption('stateLoadCallback', function (oSettings) { 
     console.log('performing load of settings'); 
     return JSON.parse(localStorage.getItem('DataTables_home')); 
    }); 

Ошибка:

Unexpected token o in JSON at position 1 
    at Object.parse (<anonymous>) 
    at jQuery.fn.init.<anonymous> (app.js:14430) 
    at _fnLoadState (jquery.dataTables.js:6308) 
    at HTMLTableElement.<anonymous> (jquery.dataTables.js:1221) 
    at Function.each (base.js:365) 
    at jQuery.fn.init.each (base.js:137) 
    at jQuery.fn.init.DataTable [as dataTable] (jquery.dataTables.js:869) 
    at jQuery.fn.init.$.fn.DataTable (jquery.dataTables.js:15105) 
    at Object.renderDataTable (angular-datatables.js:757) 
    at Object.hideLoadingAndRenderDataTable (angular-datatables.js:773) 

Cannot read property 'parentNode' of null 
    at _Api.<anonymous> (jquery.dataTables.js:9213) 
    at _Api.iterator (jquery.dataTables.js:6978) 
    at _Api.<anonymous> (jquery.dataTables.js:9212) 
    at _Api.destroy (jquery.dataTables.js:7141) 
    at jQuery.fn.init.DataTable.fnDestroy (jquery.dataTables.js:412) 
    at HTMLTableElement.<anonymous> (jquery.dataTables.js:923) 
    at Function.each (base.js:365) 
    at jQuery.fn.init.each (base.js:137) 
    at jQuery.fn.init.DataTable [as dataTable] (jquery.dataTables.js:869) 
    at jQuery.fn.init.$.fn.DataTable (jquery.dataTables.js:15105) 

Это действительно помогло бы много, если вы могли бы предоставить мне пример. Спасибо.

Версии Я использую угловой версии: v1 версия JQuery: 2.2.4 DataTables версия: 1.10.12 угловатые-DataTables версия: 0.5.5

ответ

0

Проблема разрешается с использованием следующего кода:

<table id="example" datatable 
    dt-options="showCase.dtOptions" 
    dt-columns="showCase.dtColumns"> 
</table> 

vm.dtOptions = DTOptionsBuilder.fromSource('data.json') 
    .withOption('stateSave', true) 
    .withOption('stateSaveCallback', function(settings,data) { 
    localStorage.setItem('DataTables_' + settings.sInstance, JSON.stringify(data)); 
    }) 
    .withOption('stateLoadCallback', function(settings) { 
    return JSON.parse(localStorage.getItem('DataTables_' + settings.sInstance)) 
    }); 
Смежные вопросы