Я использую библиотеку 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"
},
// ...
}
Что мне не хватает ...?