2

我正在使用名为DataTables的 jQuery 插件,我想显示一个表格,该表格是从 Ajax 源自动填充的,支持分页。问题是,从服务器上,我只得到了所有结果中的 10 个结果(响应还包含结果总数)。因此,分页看起来像:显示 10 个结果中的 1 到 10 个。

我想说:显示 X 个结果中的 1 到 10 个,其中 X 是结果的总数。我不能使用任何服务器端处理。所以我的问题是:

如何配置 DataTables 插件以使用这种类型的分页?

例如:

jQuery(table).dataTable({
  "aoColumnDefs": [...],
  "bProcessing" : true,
  "sAjaxSource" : "...",
  "sAjaxDataProp" : "...",

  "sOffsetParam" : "offset",
  "sNumFoundParam" : "totalResults"
});

再一次,我只能在客户端工作。

我设法找到了部分回应:

如果我将“bServerSide”标志设置为 TRUE,插件将在服务器响应中查找构建分页系统所需的字段。但是,字段名称仍然是硬编码的,所以我仍然需要一种使用自定义字段名称的方法。此外,偏移量是使用“sEcho”参数发送的(它指示所需的页数)。

4

1 回答 1

0

正如您在此处看到的,服务器必须返回两个参数

int - iTotalRecords - 过滤前的总记录数(即数据库中的记录总数) int - iTotalDisplayRecords - 过滤后的总记录数(即应用过滤后的总记录数 - 而不仅仅是返回的记录数在这个结果集中)

如果服务器不返回这些参数,客户端就无法知道它必须绘制下一个/上一个按钮

于 2012-08-24T19:00:09.323 回答