【问题标题】:Show on no selection无选择时显示
【发布时间】:2019-06-13 05:00:01
【问题描述】:

在选择“选择一个选项”时,具有div以显示。 默认情况下,“选择一个选项”是在页面加载时选择的选项。

我知道我需要使用 .show,但是当有两个可用选项并且其中任何一个都选择了一个选项时,我不确定如何让它专门工作。

当产品有两个选择大小和颜色时,我需要显示 Div,直到两个选择都不是“选择一个选项”

我想将 Jquery 与 woocommerce 可变产品一起使用。 我已经使用表格变体来隐藏可变价格表格,但如果选择了“选择选项”,我希望它再次显示。

jQuery('table.variations select').on('change', function() {

  jQuery('.vanish ').hide();

} );

<table class="variations" cellspacing="0">
  <tbody>
    <tr>
      <td class="label"><label for="pa_quantity">Quantity</label></td>
      <td class="value">
        <select id="pa_quantity" class="" name="attribute_pa_quantity" data-attribute_name="attribute_pa_quantity" data-show_option_none="yes">
          <option value="">Choose an option</option>
          <option value="each" class="attached enabled">Each</option>
          <option value="pck-10" class="attached enabled">PCK/10</option>
        </select>
      </td>
    </tr>
    <tr>
      <td class="label"><label for="pa_color">Colour</label></td>
      <td class="value">
        <select id="pa_color" class="" name="attribute_pa_color" data-attribute_name="attribute_pa_color" data-show_option_none="yes">
          <option value="">Choose an option</option>
          <option value="blue" class="attached enabled">Blue</option>
          <option value="red" class="attached enabled">Red</option>
          <option value="white" class="attached enabled">White</option>
          <option value="yellow" class="attached enabled">Yellow</option>
        </select><a class="reset_variations" href="#" style="visibility: visible; display: block;">Clear</a>
      </td>
    </tr>
  </tbody>
</table>

目标是在选择“选择一个选项”选项时显示一个 div,并在选择任何其他选项时隐藏它

【问题讨论】:

  • 你可以添加其他你想隐藏和显示的div结构吗?
  • 对不起,我已经回答了我第一次阅读的问题。此外,您还必须在最后做一些事情。此平台不适用于please give me full code。您必须在最后尝试一些事情,如果不起作用,那么您必须提出新问题,而不是重写原始问题,因为重写原始问题会使所有答案都无关紧要。
  • 先生,感谢您的意见,但我只是澄清了最初的问题。你的回答很好,我很感激你的意见。如果您想对此提出意见,我将非常感激,尤其是因为我不明白您是如何使其工作的。我尝试通过删除!所以它只发生在=选择时。我还取出了隐藏以确保页面加载时显示的 div。如果您能提供帮助,我将不胜感激。

标签: jquery wordpress woocommerce


【解决方案1】:

根据您的问题和提供的代码,我假设您需要隐藏如果未选择选择选项,或者如果选择了选择选项以外的选项,您需要隐藏某些 div。

如果这是你想要的,请写在下面,我已经写了一些可能有帮助的答案

html部分/选择选项

$('.select').on('change', function() { //on change function on select option 

  value = $(this).val(); //take value from options


  if (value != 'choose') { //if value is not choose than hide
    $('#div_use').css('display', 'None'); //hiding div
  }else{
     $('#div_use').css('display', ''); //show div again 
  }

});
<script src="https://cdnjs.cloudflare.com/ajax/libs/jquery/3.3.1/jquery.min.js"></script>
<div> <!-- select option -->
        <select class="select">
           
            <option value ="choose">choose option</option>
            <option value ="test1">This is an option1</option>
            <option value ="test2">This is an option2</option>
           
        </select>
    </div>
<div id='div_use'>not selected<div> <!-- div to hide -->

【讨论】:

  • 谢谢你,我仍然面临的问题是再次选择选择选项时未选择不再显示。我应该如何改进问题以反映这一点?
  • 嘿我已经编辑了,我的回答是你需要什么?
  • 是的,太好了,谢谢。你知道我如何使用 if any value ="choose",我猜它是 .val 的派生词我尝试过使用 Var 并设置 .val 属性,我还反转了 if 语句?这样,如果它符合标准,它将显示,如果不符合标准,它将隐藏。让我知道是否必须创建一个新问题,因为我是论坛的新手并查看了 .val 文档,但我似乎找不到任何元素的 val 而不是第一个。请让我知道如何改进我的问题,非常感谢您的宝贵时间
  • 您可以使用示例代码创建新问题,并且您想要做什么必须明确以便其他人可以提供帮助
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2019-12-12
  • 1970-01-01
  • 2012-08-28
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多