【发布时间】:2018-03-26 12:18:12
【问题描述】:
在服务器端模式下使用数据表,并使用 YADCL 进行过滤,有什么方法可以以编程方式提取记录 ID(例如 第 0 列包含这些 ID)用于整个过滤的记录集(不仅仅是显示的分页结果),这样我就可以对该记录集执行操作。
示例:“客户”数据库表包含 80k 条记录,我使用 YADCF 过滤将其缩小到 1k 客户的记录集,其中 20 个显示在网页上。我想在页面上有一个标记为“标记所有过滤记录”的按钮,单击该按钮会触发一个 ajax 脚本,该脚本将过滤后的 1,000 条记录上的“标记”字段从 0 更改为 1。
我可以独立于数据表处理记录的标记,但我不知道如何以编程方式确定哪些记录需要标记,即我需要提取某种形式的记录集标识,然后我可以使用它来定位我的 SQL更新动作。有什么想法吗?
【问题讨论】:
-
您是否在服务器端添加了一些与 yadcf 相关的代码? yadcf_data_0 / yadcf_data_1 / 等等?就像在陈列柜上指定的yadcf-showcase.appspot.com/server_side_source.html
-
是的,我有 Daniel,但除非我遗漏了什么,否则我看不出这与我的问题有什么关系。我想出了一个解决方法,通过捕获、解析和清理过滤期间使用的 SQL 查询(在 SSP 中),将其存储为会话 var,然后在“标记”操作期间使用它,但这需要做很多工作而且我仍然很想知道是否有更简单的方法来提取未分页的过滤记录集。我不需要这样的记录 ID,但我确实需要知道哪些记录属于记录集。通过捕获 SQL 查询的 WHERE 元素,我得到了一个可行的解决方案。
-
听起来您的问题与 yadcf 过滤行为无关
-
是的,因为 yadcf 正在对表进行过滤以生成过滤后的记录集。然后它以分页形式显示该记录集。我的问题是,是否可以以编程方式提取或引用整个过滤记录集,以便可以对整个过滤记录集执行更新操作?如果答案是否定的,那么很公平(我已经创建了一个解决方法),但这是我的问题,谢谢 :)
-
好的,很公平,谢谢丹尼尔。我在服务器端所做的一切都是从 github 的示例 SSP 脚本大量扩展而来的,而数据表、yadcf 和 SSP 之间的界限在我的脑海中有点模糊。也就是说,我已经为数据表和 yadcf 标记了这个问题,并且正在寻求任何方面的帮助。因此,总而言之,我寻求的功能取决于我要添加的功能,无论如何我已经完成了,它工作正常。感谢您抽出宝贵时间回复,再次感谢 YADCF,它已成为我最新业务应用程序的重要核心组件。
标签: datatables datatables-1.10 yadcf