【问题标题】:Can you group jQuery selectors with (slightly more) advanced logic?你可以将 jQuery 选择器与(稍微更多)高级逻辑组合在一起吗?
【发布时间】:2012-01-14 21:03:32
【问题描述】:

我们正在开发一个过滤系统,您可以在其中获得一组选项,例如:

颜色 红、蓝、绿

价格范围 0-5 英镑、6-10 英镑、11 英镑以上

制作 阿迪达斯、耐克、匡威

每个选项都是一个复选框。我们使用以下逻辑进行过滤:

  • 或组中的选项
  • 用 AND 加入那些

所以,如果我要检查红色、蓝色、0 英镑到 5 英镑、耐克和匡威,逻辑是:

(红色或蓝色)AND(0-5 英镑)AND(耐克或匡威)

每个复选框都有一个 ID。我希望使用上面的逻辑构建一个选择器,但我不确定在 jQuery 中实现它的最佳方法。显然 AND 只是附加在这些选择器中,而 OR(或等效的)使用命令,但这会在没有某种分组方式的情况下破坏逻辑,即:

$('(#red,#blue)(#price0to5)(#nike,#converse)')

有什么建议或替代方案吗?

【问题讨论】:

标签: jquery logic selector


【解决方案1】:

假设您有一堆具有适用类标识的项目:

<div class="red nike underfive"></div>
<div class="blue green converse elevenup"></div>
<div class="blue converse underfive"></div>

OR 等效于逗号,而 AND 需要链接:

$(".red,.blue").filter(".underfive").filter(".nike,.converse"); // 1 and 3
$(".green").filter(".underfive"); // empty
$(".blue").filter(".green"); // 2

【讨论】:

    猜你喜欢
    • 2011-05-23
    • 2011-02-24
    • 1970-01-01
    • 1970-01-01
    • 2011-01-24
    • 2017-01-11
    • 1970-01-01
    • 2010-10-26
    • 2011-03-18
    相关资源
    最近更新 更多