【发布时间】:2020-03-02 11:32:46
【问题描述】:
我正在使用 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"
},
// ...
}
我错过了什么...?
【问题讨论】:
-
问题中的 JSON 看起来不正确:(1) 缺少
]- 也许这只是复制/粘贴问题; (2) 标签recordTotal和recordFiltered看起来不对。我认为他们应该是recordsTotal和recordsFiltered。 -
我的天啊...我觉得自己很笨...我已经挣扎了几个小时只是因为我拼错了两个键...谢谢>。
标签: jquery datatables