超级过滤器属性显示为下拉菜单而不是复选框

时间:2016-06-08 12:21:39

标签: php opencart

我在Journal主题上使用Opencart 2.2.0。我使用超级过滤器来显示属性。问题是 - 此过滤器仅显示为复选框。我需要它显示为下拉。主题制作人告诉我,模块只显示复选框选项,但我想知道我是否可以将其显示为下拉菜单。 super_filter_attributes.tpl的代码是:

<div class="box sf-attribute sf-attribute-<?php echo $attribute['attribute_id']; ?> sf-<?php echo $attribute['type']; ?>">
<div class="box-heading"><?php echo $attribute['attribute_name']; ?></div>
<div class="box-content">
    <ul class="<?php echo $this->journal2->settings->get('filter_show_box') ? '' : 'hide-checkbox'; ?>">
        <?php foreach ($attribute['values'] as $value) { ?>
        <li><label><input data-keyword="<?php echo $value['keyword']?>" type="checkbox" name="attribute[<?php echo $attribute['attribute_id']?>]" value="<?php echo $value['text']; ?>"><?php echo $value['name']; ?></label></li>
        <?php } ?>
    </ul>
</div>

我编辑了一下,现在我的代码看起来像这样:

<div class="box sf-attribute sf-attribute-<?php echo $attribute['attribute_id']; ?> sf-<?php echo $attribute['type']; ?>">
<div class="box-heading"><?php echo $attribute['attribute_name']; ?></div>
<div class="box-content">
    <ul class="<?php echo $this->journal2->settings->get('filter_show_box') ? '' : 'hide-checkbox'; ?>">
       <div class="box sf-attribute sf-attribute-<?php echo $attribute['attribute_id']; ?> sf-<?php echo $attribute['type']; ?>">
<div class="box-heading"><?php echo $attribute['attribute_name']; ?></div>
<div class="box-content">
    <ul class="<?php echo $this->journal2->settings->get('filter_show_box') ? '' : 'hide-checkbox'; ?>">
        <?php foreach ($attribute['values'] as $value) { ?>
        <select>
         <option><?php echo $value['name']; ?></option>
          <?php foreach ($value['filter'] as $filter) { ?>
          <?php if (in_array($filter['filter_id'], $filter_category)) { ?>
          <option value="<?php echo $filter['filter_id']; ?>" id="filter<?php echo $filter['filter_id']; ?>" selected>
         <?php echo $filter['name']; ?>
          </option>
          <?php } else { ?>
          <option value="<?php echo $filter['filter_id']; ?>" id="filter<?php echo $filter['filter_id']; ?>">
         <?php echo $filter['name']; ?>
          </option>
          <?php } ?>
          <?php } ?>
        </select>

        <?php } ?>
    </ul>
</div>

我并没有做好一切,因为我现在只能看到部分下降,而且一切都混乱了。 有关编辑我的代码的建议吗?提前谢谢大家!

1 个答案:

答案 0 :(得分:1)

将选择标记放在foreach之外。这可能有所帮助。

jQuery('#checkoutSteps').css({'min-height':(divHeight+80)+'px'});