0
嗨,目前我正在开发一个过滤应用程序。请参阅我的HTML和JS代码基于复选框值显示和隐藏值usig jquery
jQuery(document).ready(function($){
$(".color-label").on("click",function(){
\t
\t var color_box_val= $(this).find('.color-box').val();
\t $('.test-li').hide();
\t $('div:contains('+color_box_val+')').closest('.test-li').show();
\t });
});
.hidden-color{
display:none;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/3.2.0/jquery.min.js"></script>
<label class="color-label">Red<input type="checkbox" class="color-box" value="red"/></label>
<label class="color-label">Black <input type="checkbox" class="color-box" value="Black"/></label>
<ul>
<li class="test-li">
<div class="test-div">
<p class="hidden-color">red</p>
\t red poduct
</div>
</li>
<li class="test-li">
<div class="test-div">
<p class="hidden-color">Black</p>
\t black Product
</div>
</li>
<li class="test-li">
<div class="test-div">
<p class="hidden-color">Blue</p>
\t blue Product
</div>
</li>
所以这是IAM时做客户点击黑色的,那么它会显示黑色的产品。如果客户点击红色和黑色,那么我们需要同时显示,如果客户没有打勾,我们需要显示所有产品。
但我坚持了一些观点。在这里,如何在点击时同时显示红色和黑色?目前它显示基于新点击的复选框的结果。此外,如果他们解决每一件事,那么我需要显示所有的框。请建议。
谢谢你的朋友。这是工作 。很好的解释 。 – Manik
@Manik我已经更新了我的答案,包括没有任何检查的情况下,所有项目应显示 – Terry
真的很感谢你。对于第二种情况,我做了另一个代码,但是你的代码是完美的。我写如果(colors.length == 0){$(“。test-li”)。show(); }。朋友你知道woocommerce和wordpress吗? 。 – Manik