使用 tablesorter 的寻呼机插件可以进行服务器端分页吗?看起来默认选项要求您一次将所有行加载到浏览器的内存中。由于我有这么多记录,这实际上是不可能的,我宁愿一次加载一页。tablesorter 寻呼机插件是否支持此功能?如果是这样,我错过了什么,因为文档显示了这个例子:
// process ajax so that the data object is returned along with the total number of rows
// example: { "data" : [{ "ID": 1, "Name": "Foo", "Last": "Bar" }], "total_rows" : 100 }
ajaxProcessing: function(ajax){
if (ajax && ajax.hasOwnProperty('data')) {
// return [ "data", "total_rows" ];
return [ ajax.data, ajax.total_rows ];
}
},
那,以及我能够找到的其他示例,看起来它一次将所有行加载到 ajax 处理函数的内存中。
http://mottie.github.com/tablesorter/docs/example-pager.html
更新:
在http://mottie.github.com/tablesorter/docs/example-pager-ajax.html看到 AJAX 寻呼机后,我还有几个问题:
- 排序列表 = [[2,0],[3,0]]。在Ajax URL中,我是否自己转换为&col[2]=0&col[3]=0的真实格式?
ajaxProcessing 的文档说:
处理 ajax 以便返回以下信息: // [ total_rows (number), rows (array of array), headers (array; optional) ]
看起来 total_rows 是数据库中的行数,而不是浏览器内存中的行数或表中显示的行数。那是对的吗?下一个问题:我了解数组“行”数组的格式。但是实际上应该包含哪些行?文档说它是“所有行”,但它只是表中显示的行的当前页面吗?是用户迄今为止翻阅的所有行吗?我认为这不是数据库中的所有行,因为这会完全破坏这一点。