javascript - 两级过滤器 OR/AND
问题描述
我创建了一个 2 级过滤器,其中第一个过滤器是 OR,第二个是 AND
这意味着您可以在过滤器 1 中选择一个选项,在过滤器 2 中选择任意数量的选项
此过滤器通过使用类来工作
被过滤的元素列表具有特定的类,首先是一个月(使用过滤器 1 过滤),然后是类别(使用过滤器 2 过滤)
使用过滤器时,如果过滤器1选择了月份,则显示以该月份为类的元素
但是一旦选择了一个类别,它就必须显示该月和该类别的元素
到目前为止,它有效
The idea is that when a second category is selected, it has to display the elements from that specific month and with EITHER one of the categories selected
例子:
过滤器 1:七月
过滤器 2:社会、活动
结果:
Event (July Societies) --> 只是类别之一
活动(七月活动)-> 只是其中一个类别
Event (July Societies $ Campaigns) --> 两个类别
$('.press').click( function() {
const checked = $(":checked");
var filtered = "";
if (checked.length === 0) {
return $(".event_item").show();
}
$(".event_item").hide();
checked.each(function() {
filtered = filtered + "." + this.id;
});
$(".event_item" + filtered ).show();
});
解决方案
因为您的收音机和您的复选框以两种不同的方式工作,所以您需要创建两个变量,一个用于[type="radio"]:checked
,一个用于[type="checkbox"]:checked
并形成选择器以从中显示。
对于所选的每个类别,将其与所选月份连接,然后将它们与,
.
例子:
过滤器 1:七月
过滤器 2:社会、活动
=> 选择器创建:.event_item.july.societies, .event_item.july.campaigns
推荐阅读
- python - 尝试使用 lambda 从雅典娜视图获取数据时出现属性错误
- c# - 我有一个用 C# 编写的 Qr 生成器应用程序。所以现在我想生成在运行时每 10 秒改变一次的 Qr 代码
- react-admin - React Admin - 如何动态更改选项卡标题以便浏览器历史列表可破译?
- python-3.x - 如何在 django 中向 auth_permission 模型添加自定义字段?
- sql - 需要计算一下,有多少人工作超过3个月
- python - 使用CNN keras的准确率过高或过低
- javascript - 如何读取文本文件的内容并将其写入使用纯 JavaScript?
- filenet-p8 - FNRPE2131090482E - 正在初始化服务器。重试操作
- relational-algebra - 如果元组只存在于所有出现的约束中,则查找元组
- javascript - 如何使用 MongoDB $push 和 $inc 运算符重现此代码?