js将单元格值投射到facet中

Datatables.js project cell values into facets

本文关键字:facet 单元格 js      更新时间:2023-09-26

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

产品

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

我正在创建facet以根据产品类别过滤掉产品。我使用的是datatable .js.
我想将逗号分隔的类别投射到单独的方面,例如Mac的过滤器,即使它们有其他类别,也会列出上表中的两个产品。

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

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

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

稍微调整一下就能正常工作了。
事实证明,过滤器API接受的参数比我最初看到的要多一些。

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

如果useRegularExpressions设置为false, useSmartFilter为true,则如果列包含 searchTerm,则返回匹配。

我所要做的就是确保在搜索包含CSV的列时提供了正确的参数。
我承认我不得不研究@Ove提供的API(+1)来找出如何为facet收集不同的项目-但它已经由fnGetColumnData插件实现,只需要一点调整。