我想避免做许多较小的查询,并做一个从服务器抓取 1000 行的查询,并在每页上用 50 对它们进行分页。如何使第 21 页呈现新查询以获取接下来的 20 页?
这也意味着排序列也需要新的服务器端请求。
我想避免做许多较小的查询,并做一个从服务器抓取 1000 行的查询,并在每页上用 50 对它们进行分页。如何使第 21 页呈现新查询以获取接下来的 20 页?
这也意味着排序列也需要新的服务器端请求。
在服务器端处理模式下使用 jQuery DataTables 时,可以缓存一定数量的页面,请参阅Pipelining data to reduce Ajax calls for paging。
从描述:
此示例显示了一种通过缓存比每次绘制所需的更多数据来减少对服务器进行的 Ajax 调用次数的技术。这是通过拦截 Ajax 调用并通过数据缓存控件路由它来完成的;如果可用,则使用缓存中的数据,如果不可用,则发出 Ajax 请求。
有一些配置选项允许您配置一次可以检索多少页,请参阅pages
属性:
// Configuration options
var conf = $.extend( {
pages: 5, // number of pages to cache
url: '', // script url
data: null, // function or object with parameters to send to the server
// matching how `ajax.data` works in DataTables
method: 'GET' // Ajax HTTP method
}, opts );