Подтвердить что ты не робот

Размер пагинации jQuery

Я использую плагин jQuery DataTables (http://datatables.net) в течение довольно долгого времени, и обычно мы отлично используем размеры по умолчанию и используя опцию "bStateSave": true.

Но теперь мне действительно нужно установить размер разбивки на страницы не как [10,25,50,100], но мне это нужно, скажем, [1,2,3]. Я получаю меню таким образом, чтобы установить параметр aLengthMenu:[1,2,3], и если я выберу один из вариантов, он установит правильную сумму выбора.

Но в dataTable STARTUP он не устанавливает длину в 1,2,3, а скорее по умолчанию '10'

Какой вариант мне не хватает? Спасибо заранее!

4b9b3361

Ответ 1

  • Таблицы данных 1.10 +

    Используйте lengthMenu, чтобы определить список доступных длин страниц и, при необходимости, pageLength, чтобы задать начальную длину страницы.

    Если pageLength не указывается, оно будет автоматически установлено на первое значение, указанное в массиве, указанное lengthMenu.

    var table = $('#example').DataTable({
       "lengthMenu": [ [2, 4, 8, -1], [2, 4, 8, "All"] ],
       "pageLength": 4
    });
    

    Смотрите этот jsFiddle для кода и демонстрации.


  • Таблицы данных

    Используйте aLengthMenu, чтобы определить список доступных длин страниц и iDisplayLength, чтобы установить начальную длину страницы.

    var table = $('#example').dataTable({
       "aLengthMenu": [ [2, 4, 8, -1], [2, 4, 8, "All"] ],
       "iDisplayLength": 4,        
    });
    

    Смотрите этот jsFiddle для кода и демонстрации.

Ответ 2

очистите файлы cookie, те данные, которые были сохранены при использовании bStateSave, и у вас было 10,25,50,100

затем обновите, и теперь он должен сохранить 1 или 2 или 3

вы имеете в виду

"aLengthMenu": [[5, 10, 15, 25, 50, 100 , -1], [5, 10, 15, 25, 50, 100, "All"]],
"iDisplayLength" : 10,

Ответ 3

Обязательно подождите, пока вы не загрузите angular.

$timeout(function(){ // given timeout for wait load the page
   $('#dataTables-example').dataTable({
        "iDisplayLength": 10, 
   });
}, 100, false);