javascript - 单击按钮和页面加载时隐藏元素
问题描述
我无法解决我遇到的这个问题,我希望我的文章阅读起来不会太复杂。
我正在制作具有 3 个变量的产品。客户可以在我们的地方取货,或者我们可以交付产品。出于实际考虑,我们选择在那里销售的产品应该以包含 30、60 或 90 个产品的包装形式交付。
在显示价格之前,需要选择所有 3 个变量。所以问题来了。如果有人想在我们的地方取货,只需选择 2 个变量:长度(米)和取货或送货。但这不会付出代价。因此,我需要再次在“包裹”中插入“取货”以获得价格。
但我想在包裹中隐藏“接送”,所以我不会让访客感到困惑。该图像描述了我正在寻找的内容:
该页面的演示可以在这里看到
我在看CSS。那是我必须与javascript一起使用的东西,还是如何/如果可能的话?
<ul class="variable-items-wrapper button-variable-wrapper" data-attribute_name="attribute_pa_packages">
<li data-wvstooltip="pickup" class="variable-item button-variable-item button-variable-item-pickup" title="pickup" data-value="pickup">
<span class="variable-item-span variable-item-span-button">pickup</span>
</li>
</ul>
<ul class="variable-items-wrapper button-variable-wrapper" data-attribute_name="attribute_pa_packages">
<li data-wvstooltip="pickup" class="variable-item button-variable-item button-variable-item-pickup selected" title="pickup" data-value="pickup">
<span class="variable-item-span variable-item-span-button">pickup</span></li>
</li>
</ul>
最好的祝福。
解决方案
您可以在每次用户单击“取货或送货”选项之一时收听,如果选择的选项是“取货”,请使用 JQuery 在“包裹”中选择“取货”选项。这是这个算法的实现。
jQuery("ul[data-attribute_name=attribute_pa_pickup-og-delivery] li").click(function(){
var selectedDelivery = jQuery("ul[data-attribute_name=attribute_pa_pickup-og-delivery]").find("li.selected").attr("data-value");
if (selectedDelivery == "pickup"){
jQuery("ul[data-attribute_name=attribute_pa_packages] li[data-value=pickup] span").click();
jQuery("ul[data-attribute_name=attribute_pa_packages] li[data-value=pickup]").hide(); // hide the "pickup" option in "Packages" if you like
}
});
推荐阅读
- java - 有没有办法在加载时使用来自先前场景的数据填充场景,而不必启动事件?
- java - 如何在 Gradle 中修复我的 React Native 失败的 Android 构建?com.google.firebase:firebase-iid 正在被其他各种库请求
- javascript - 无法使用窗口 onload 方法加载我的图表
- angular - 如何将用户引导到页面的特定部分?
- python - 如何删除json中的“行继续字符后的意外字符”SyntaxError?
- sql - 从另一个表的 3 个不同列的表中获取连接的 desc
- android - 如何设置由于不同设备上的背景图像而扩展的滚动视图?
- java - 使用 JSP 从 MySQL 检索数据并将结果显示为搜索框中的选项
- python - 如果可能的话,使用切片选择方法批量删除数据框的列?
- c# - C#如何写入文本文件?