Datatables.js将单元格值投影到构面中

时间:2013-04-24 10:07:24

标签: javascript jquery-plugins datatables

假设我有一个表格,列出了产品所属的产品和类别。一个产品可以有一个或多个类别,例如:

产品

+----+----------+---------------+
| id | name     | category      |
+----+----------+---------------+
| 1  | 256GBSSD | Mobile,Mac,PC |
+----+----------+---------------+
| 2  | 8GBRAM   | Mac,PC        |
+----+----------+---------------+

我正在创建方面,根据类别过滤掉产品。我正在使用Datatables.js 我想将逗号分隔的类别投影到各个方面,以便Mac的过滤器列出上表中的产品,即使它们还有其他类别。

如何告诉datatables.js,当涉及第三列时,它应该将逗号分隔列表中的每个类别列为可搜索且唯一(无重复)类别?

2 个答案:

答案 0 :(得分:3)

这似乎可以解决它:https://github.com/vedmack/yadcf

他们的例子看起来就像你想要的那样:http://jsbin.com/esezof/1

答案 1 :(得分:3)

通过一些调整让它开箱即用。
事实证明filter API比我原先看到的要多一些参数。

oTable.fnFilter(searchTerm, columnId, useRegularExpressions, useSmartFilter);

如果useRegularExpressions设置为false且useSmartFilter为true,那么如果列包含 searchTerm,则会将其作为匹配项返回。

我只需要确保在搜索包含CSV的列时提供正确的参数 我承认我必须查看@Ove提供的API(+1)以了解如何为方面收集不同的项目 - 但它已经由fnGetColumnData plugin实现,只需要一点点调整。