Плагин jQuery Pagination не работает на асинхронной таблице - PullRequest
0 голосов
/ 01 октября 2018

Мне нужно заменить систему нумерации страниц на новую, поскольку я не имею полного контроля над HTML или JS.

Для этого я пытаюсь использовать Pagination.js плагин, но как только я загрузил скрипт, метод .pagination(), похоже, полностью игнорируется.

Сначала я сделал эту работу на JSFiddle , поскольку идея та же.Но я несколько раз менял свой код.

Мой код в нашей среде разработки:

document.addEventListener('readystatechange', function() {
    if(document.readyState !== 'complete')
        return;

    $.getScript('https://pagination.js.org/dist/2.1.4/pagination.min.js')
      .done(function() {
          let rows = [];
          $('table tbody tr').each(function(i, row) {
              return rows.push(row);
          });

          if(rows.length) {
              $('.jquery-bootstrap-pagination').pagination({
              dataSource: rows,
              pageSize: 1,
              callback: function(data, pagination) {
                  $('tbody').html(data);
              },
              afterRender: function(loaded) {
                  console.info('Pagination loaded:', loaded);
              }
          });
          console.info('Loaded rows:', rows.length);
      } else
          $('.jquery-bootstrap-pagination').css('display', 'none');
  })
  .fail(function(jqxhr, settings, exception) {
      console.error(jqxhr, settings, exception);
  });
});

Я уже пробовал с $(document).ready(), window.onload и document.addEventListener("DOMContentLoaded") и rows число равно 0, но document.addEventListener('readystatechange', function() {}).

После отладки некоторые шаги с console.info() Мне удалось увидеть, что вызывается метод .pagination(), но ничего не происходит.

Я не могу обработать загрузку данных таблицы или время ее задержки, но я знаю, что jQuery загружается раньше.

Примечание: Я не могу использовать большинство систем нумерации страниц, так какисточником данных являются те же строки таблицы HTML.Мне нужно перезагрузить данные в этой таблице с помощью плагина нумерации страниц, например, скрипки.

Почему pagination() игнорируется?Заранее спасибо.

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