【发布时间】:2019-05-22 18:02:42
【问题描述】:
好的,我正在创建用于过滤产品的菜单,以防止我的标签和子菜单过长。
我为我的主要类别创建了一个下拉过滤器(我添加了一个除非来消除子级别的类别标签)
然后,我有一个子类别菜单,仅在未选择“所有类别”时显示。
这会为该类别中的所有标签生成一个子类别过滤器。代码见下:
<div class="text-center">
<div class="browseby" style="display:inline;padding:20px;">
<div class="clearfix filter" style="float:left;">
Browse By Category <select class="coll-filter">
<option value="">All</option>
{% for tag in collection.all_tags %}
{% unless tag == 'HP' or tag == 'Latex' or tag == 'Latex 570' or tag == 'Parts' or tag == 'Aqueous Media' or tag == 'Latex Media' or tag == 'Solvent Media' %}
{% if current_tags contains tag %}
<option value="{{ tag | handle }}" selected>{{ tag }} ({{ collection.products_count }})</option>
{% else %}
<option value="{{ tag | handle }}">{{ tag }}</option>
{% endif %}
{% endunless %}
{% endfor %}
</select>
</div>
{% if current_tags %}
<div class="clearfix filter" style="float:left; padding-left:20px">
Browse By Sub-Category <select class="coll-filter">
<option value="">All</option>
{% for tag in collection.tags %}
{% unless current_tags contains tag %}
{% if current_tags contains tag %}
<option value="{{ tag | handle }}" selected>{{ tag }} ({{ collection.products_count }})</option>
{% else %}
<option value="{{ tag | handle }}">{{ tag }}</option>
{% endif %}
{% endunless %}
{% endfor %}
</select>
</div>
{% else %}
{% endif %}
</div>
现在的问题是,当我选择子类别过滤器时,标签未显示为选中状态。
按类别浏览显示全部,然后在我拥有的下拉列表中(全部,Category1,Category2,Category3 ..) 如果我选择 Category3,页面会重新加载并显示按类别浏览:Category3
按子类别浏览显示全部,然后在我拥有的下拉列表中(全部,SubMenu1,SubMenu2,SubMenu3) 如果我选择 SubMenu2 产品全部过滤。 按类别浏览仍显示:Category3 但按子类别浏览显示:全部 在下拉菜单中,我有 (All, SubMenu1, SubMenu3)
如果这令人困惑,请告诉我。
【问题讨论】: