Javascript 返回额外页面的服务器端数据表
当我调用服务器端DataTables搜索时,我返回一项,这是AJAX调用的响应:Javascript 返回额外页面的服务器端数据表,javascript,jquery,ajax,datatables,Javascript,Jquery,Ajax,Datatables,当我调用服务器端DataTables搜索时,我返回一项,这是AJAX调用的响应: {draw: 1, recordsTotal: 1, recordsFiltered: 18,…} data: [{...}] draw: 1 recordsFiltered: 18 recordsTotal: 1 DataTables认识到这一点: Showing 1 to 10 of 18 entries (filtered from 1 total entries) 这是我当前的配置,我目前正在使
{draw: 1, recordsTotal: 1, recordsFiltered: 18,…}
data: [{...}]
draw: 1
recordsFiltered: 18
recordsTotal: 1
DataTables认识到这一点:
Showing 1 to 10 of 18 entries (filtered from 1 total entries)
这是我当前的配置,我目前正在使用管道,如下所述:
当我在Chrome浏览器控制台中调用table.page.info时,我得到
{page: 0, pages: 2, start: 0, end: 10, length: 10, …}
end: 10
length: 10
page: 0
pages: 2
recordsDisplay: 18
recordsTotal: 1
serverSide: true
start: 0
基于前面的信息和Datatables正确搜索的事实,我认为我的服务器端实现是正确的。但是,我不知道是什么原因导致Datatables显示了两个页面,而不是每页显示10条记录。在重新检查服务器端代码后,在yash的注释的帮助下,我意识到我切换了recordsTotal和recordsDisplay的返回值。希望这有助于您理解 recordsTotal用于显示总记录数,并为记录数设置分页。Datatable具有基于recordsTotal设置分页的内部函数。 而RecordsDisplay用于显示特定页面上的记录。当您单击分页时,服务器端将根据长度和偏移量获取新记录。 因此,代码中的问题是您有recordsDisplay是18,recordsTotal是1。这是不可能的
->recordsDisplay>recordsTotal是不可能的。recordsDisplay>totalRecords怎么可能呢?谢谢,这就是问题所在!“嗨,动物测试,”我补充道。如果有帮助,那就投票吧。
{page: 0, pages: 2, start: 0, end: 10, length: 10, …}
end: 10
length: 10
page: 0
pages: 2
recordsDisplay: 18
recordsTotal: 1
serverSide: true
start: 0