【问题标题】:Show Div depending on select Value in foreach根据 foreach 中的选择值显示 Div
【发布时间】:2016-09-09 12:18:46
【问题描述】:

我们有在列表中显示的产品。 为此,我们使用foreach

我们的列表中有大约 25 种产品。在这里,我们尝试隐藏“添加到购物车”按钮,直到使用选择选项进行选择。

对于每个产品单独不起作用,因为我们对每个产品都有相同的类。

使用以下脚本我们没有成功。加载需要很长时间并且更改选择不会执行任何操作,添加到购物车按钮也不会隐藏。

到目前为止,这是我们的代码:

    <script>
     $(document).ready( function() {
          $('.attribute_select').bind('change', function (e) { 
            if( $('.attribute_select').val() == 'choose') {
              $('#add_to_cart').hide();
            }
            else if( $('.attribute_select').val() != 'choose') {
              $('#add_to_cart').show();
            }         
          }).trigger('change');
        });
    </script>


    {foreach from=$products item=product name=products}

    <fieldset class="fs_1">
        <select name="s_name1" id="attribute_combination" class="attribute_select">
            <option value="choose" selected="selected">CHOOSE....</option>
            <option value="1" >1</option>
            <option value="2" >2</option>
        </select>
     </fieldset>

    <div id="add_to_cart}">
    <a class="" href="..." data-id-product-attribute="{$product.id_product_attribute|intval}" data-id-product="{$product.id_product|intval}" ></a>
    </div>
    {/foreach}

【问题讨论】:

标签: javascript jquery foreach


【解决方案1】:

您的 DOM ID 无效,无法匹配:

<div id="add_to_cart}">

应该是:

<div id="add_to_cart">

【讨论】:

    【解决方案2】:

    我们现在使用以下代码,但无法设法仅显示/隐藏属于字段集的 ht Add To Cart Button

    $(function() {
         $('.add_to_cart').hide(); 
            $('.ndk_attribute_select').change(function(){
             if($('.ndk_attribute_select').val() != 'choose') {
                 $('.add_to_cart').show(); 
             } else {
                 $('.add_to_cart').hide(); 
             } 
         });
    });
    

    最后有什么提示吗?

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2013-10-10
      • 2010-12-14
      • 2018-04-17
      • 1970-01-01
      • 2018-05-20
      • 1970-01-01
      相关资源
      最近更新 更多