зарегистрировать lengthMenu dataTables в сеансе? - PullRequest
0 голосов
/ 07 июня 2018

Я использую плагин DataTables .Я хочу сохранить lengthMenu в сеансе, и если пользователь снова открывает страницу, мы отображаем массив с тем же lengthMenu, который был сохранен в сеансе.

Если он выбрал 50, мы сохраняем 50 в переменной сеанса, и если пользователь повторно открывает страницу, мы отображаем ее с массивом с 50 элементами.Вот исходный код:

$(document).ready(function() {
  $('#Example').DataTable({
    "lengthMenu": [
      [10, 25, 50, -1],
      [10, 25, 50, "All"]
    ]
  });
});

1 Ответ

0 голосов
/ 07 июня 2018

DataTables уже имеет эту встроенную функциональность. Вы можете включить ее, установив для свойства stateSave значение true.Обратите внимание, что это технически использует куки, а не сеанс на стороне сервера, однако функциональность такая же.Попробуйте это:

$('#Example').dataTable({
  stateSave: true,
  lengthMenu: [
    [10, 25, 50, -1],
    [10, 25, 50, "All"]
  ]
});

Подробнее о stateSave и связанных с ним настройках вы можете прочитать в документации DataTables

Если вам все еще требуется сохранить ее всеанса на сервере, тогда вы могли бы использовать свойства stateSaveCallback и stateLoadCallback для выполнения AJAX-запросов на получение / установку значения сеанса.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...