javascript - 不明确的 multi_select 过滤器 - AND 和 OR 条件 - javascript

标签 javascript yadcf

multi_select filterselect2在 yadcf (数据表插件)中,有一个不明确的过滤解决方案。 如果您的行内有单个值,例如

value1
value2

当你过滤时,你有一个OR过滤。它显示具有values1和values2的所有行。
如果您设置逗号等文本分隔符或多个分隔符(使用正则表达式),multiple_select 过滤器将充当 AND 条件。
查看第 0 列的示例:Example
是否可以有一个 JavaScript 函数来根据您的需要启用 AND 条件或 OR 条件?

为了更好地曝光,我制作了一个小视频,说明问题所在以及我期望在表中看到的内容。
问题很棘手,但用正确的 javascript 代码解决应该不难

VIDEO

------------------------------------------------------------ --------------------------------
-------------------------------------------------- ------------------------------------------

添加功能改进请求:

New VIDEO

视频中使用的示例:Table

最佳答案

文本分隔符的目的是帮助您将列中的值提取到过滤器中,但是...当您尝试从过滤器中提取值并将其应用到表中时,您将获得所有行您选择的值所在的位置。

如果您希望在选取值时执行如此高级的逻辑,则应使用 filter_type: 'custom_func'multi_select_custom_func 看看它是如何工作的上the showcase (其第一列)向下滚动以查看该页面上使用的代码。

<小时/>

最后我理解了你的问题,虽然多重选择应该始终作为选定值的 OR 过滤器,但它并没有这样做,我已在 latest beta 0.8.8.beta.11 中修复了它。这是一个 updated jsfiddle

<小时/>

关于您的AND问题:您无法使用 mutli select + text_data_delimiter 图像来完成它,您有一列包含 AAA、BBB,现在您的用户可以选择 AAA然后是 BBB(应该可以),但他也可以选择 BBB,然后是 AAA,并且没有正则表达式可以将 BBB、AAA 识别为 AAA、BBB(这只是一个小例子)

因此,最好的解决方案是将 filter_type: "multi_select" with text_data_delimiter 切换为 (filter_type: "multi_select" without text_data_delimiter or filter_type: "select “)

并且已经有一个 similar issue open for that (不确定什么时候实现)

关于javascript - 不明确的 multi_select 过滤器 - AND 和 OR 条件 - javascript,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/29175813/

相关文章:

javascript - D3 获取 .data() 中的前一个元素

javascript - 在这个非常简单的虚拟应用程序上,错误的处理程序捕获了 Flux 操作,为什么?

javascript - 语法错误 : missing ; before statement jquery jsonp

javascript - Colvis 不适用于 yadcf 的数据表

javascript 在给定的时间间隔轮询

javascript - 如何在没有回发或重新加载页面的情况下在 .aspx 页面中加载 .ascx 控件

javascript - 将标签转换为 jquery 表的可点击标签过滤器 - yadcf

mysql - MySQL 数据库的 yadcf DataTables 标签(Ajax,服务器端 False)

javascript - Datatables + YADCF + Select2 - 默认选择的数据

jquery - 带有 yadcf 插件的 DataTables - 如何覆盖发送的参数