DataTables - Ajax разбита на страницы - PullRequest
0 голосов
/ 02 марта 2020

Я использую библиотеку DataTable jQuery для отображения данных и использую опцию обработки на стороне сервера, чтобы сделать это с помощью ajax. Все отлично работает, за исключением того, что моя страница не останавливается на последней странице. Я могу продолжать двигаться дальше (конечно, все эти страницы пусты). Информация, отображаемая в нижней части таблицы, также неверна, говоря: Showing 0 to 0 of 0 entries (filtered from NaN total entries)

Javascript инициализация:

    const ajaxUrl    = $(this.tableContainer).data('ajaxUrl');
    const pageLength = $(this.tableContainer).data('pageLength');

    $(this.tableContainer).DataTable({
        'ajax'         : ajaxUrl,
        'pageLength'   : pageLength,
        'processing'   : true,
        'serverSide'   : true,
        'lengthChange' : false,
        'info'         : true,
        'searching'    : false,
        'autoWidth'    : false,
        'columns'      : [
            {
                "data" : "fileName",
            },
            {
                "data" : "userName",
            },
            {
                "data"      : "hash",
                "orderable" : false,
            },
            {
                "data" : "date",
            },
            {
                "data"      : "time",
                "orderable" : false,
            },
            {
                "data"      : "transactionNumber",
                "orderable" : false,
            },
            {
                "name"      : "download",
                "orderable" : false,
                "render"    : this.renderButton.bind(this)
            }
        ],
        "order"        : [[3, 'desc']] // Order by date by default
    });

Мой JSON ответ выглядит нормально, он генерируется из PHP / Symfony приложение.

{
  "draw": "1",
  "recordTotal": 51,
  "recordFiltered": 51,
  "data": [
    {
      "id": 601,
      "fileName": "vvvvvvv.png",
      "userName": "Angelo Mahrouchi",
      "date": "02/03/2020",
      "time": "10:20:08",
      "transactionNumber": "0x4d58e7450054dfa73455bbe82f8bffb8bd75cefba098398171c594eba1c56780",
      "hash": "48f0b5225832ae836b4fe1203ef5ec98d04b7bd231511de8d13cb858fdd562a37210550e9f9711f9e83610b7faaa96091de8721e814c2a673190c755059c0b7c"
    },
    {
      "id": 551,
      "fileName": "TestFile 0",
      "userName": "Certification Fixture",
      "date": "01/03/2020",
      "time": "09:01:50",
      "transactionNumber": "0x90d3ae190428986851b26e0350e831116cbff4a124da299439f557b6e11d658b",
      "hash": "9d5dc53cb2f265ee42cc6e34bc2d8b6d3b78b733f166fed4817c908a16c15fb2464b607c06a0f6d7e4a5800641810db87be1a48807380c2c892ce2e672531868"
    },
    // ...
}

Что мне не хватает ...?

1 Ответ

0 голосов
/ 02 марта 2020

Как упоминалось в комментариях выше, ошибка была довольно простой ... Я неправильно ввел ключи recordsTotal и recordsFiltered в ответе ajax и, конечно, это не работает>. <</p>

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