Advertisement
Guest User

Untitled

a guest
Dec 11th, 2016
105
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.15 KB | None | 0 0
  1. $(document)
  2. .on('preInit.dt', (ev, settings) => {
  3. let tableId = ev.target.id;
  4. let tableState = _.get(['datatables', tableId], history.state, {});
  5.  
  6. let api = new $.fn.dataTable.Api(settings);
  7.  
  8. if(tableState.hasOwnProperty('page')) {
  9. api.page(tableState.page); // <-- problem is here; page doesn't get set
  10. }
  11.  
  12. if(tableState.hasOwnProperty('search')) {
  13. api.search(tableState.search);
  14. }
  15.  
  16. if(tableState.hasOwnProperty('order')) {
  17. api.order(tableState.order);
  18. }
  19.  
  20. const setState = (key, value) => {
  21. history.replaceState(_.set(['datatables', tableId, key], value, history.state), '');
  22. };
  23.  
  24. api.on('page', ev => {
  25. let info = api.page.info();
  26. // console.log('page', tableId, info.page);
  27. setState('page', info.page);
  28. });
  29.  
  30. api.on('order', ev => {
  31. let order = api.order();
  32. // console.log('order', tableId, order);
  33. setState('order', order);
  34. });
  35.  
  36. api.on('search', ev => {
  37. setState('search', api.search());
  38. });
  39. });
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement