select2有一个模糊的过滤解决方案。 如果内部行有单个值,如
value1
value2
过滤时,您有OR
过滤。它显示了包含values1和values2的所有行
如果您设置文本分隔符(如逗号或多个分隔符)(使用正则表达式),则multiple_select过滤器的行为与AND
条件相同。
查看第0列的示例:Example
是否可以根据您的需要设置启用或启用AND条件或OR条件的javascript函数?
为了更好地曝光,我制作了一个关于问题是什么以及我期望在表格中看到什么的视频。
问题很棘手,但用正确的javascript代码来解决它应该不难:
----------------------------------------------- --------------------------------
-------------------------------------------------- -----------------------------
添加功能改进请求:
视频中使用的示例:Table
答案 0 :(得分:1)
文本分隔符的目的是帮助您将列中的值提取到过滤器中,但是......当您尝试从过滤器中获取值并将其应用于表时,您将获得所有行您选择的值位于。
如果您希望在获取值时执行如此高级的逻辑,则应使用filter_type: 'custom_func'
或multi_select_custom_func
查看其在the showcase上的工作原理(第一个列)向下滚动到查看该页面上使用的代码。
最后我理解了你的问题,而多选择应该总是作为OR过滤器对所选择的值进行OR过滤而不是这样做,我已经在latest beta 0.8.8.beta.11修复了它,这里是{{3 }}
关于 AND 问题:您无法使用mutli select + text_data_delimiter
图像来完成它,您有一个AAA,BBB列,现在您的用户可以选择AAA然后BBB(应该可以工作)但是他也可以选择BBB然后选择AAA,并且没有可以发现BBB的正则表达式,AAA作为AAA,BBB(这只是一个小例子)
所以最好的解决方案是在filter_type: "multi_select"
和text_data_delimiter之间切换到(filter_type: "multi_select"
没有text_data_delimiter或filter_type: "select"
)
已经有updated jsfiddle(我不确定何时实施)