我有这个条件选择通常工作正常,但我想做一些小调整。查看我的fiddle here。
如果你选择一个品牌,比如Apple,你可以选择两个型号。如果您选择一个模型,它可以正常工作。
但是(a)如果再次单击“选择型号”(仍然在第一个框中选择“Apple”),我想像以前一样显示所有Apple项目。
并且(b)如果您选择另一个Apple型号,则没有任何反应。
我想解决方案是在if ($currentSelection != "showall") {}
声明中,但我无法让它发挥作用。
有人能指出我正确的方向吗?
感谢。
答案 0 :(得分:1)
我已更新了您的jsfiddle。
你缺乏一些条件:
if ($currentSelection != "showall") {
$options.each(function(){
if($(this).is("#"+$currentSelection)) //Show match
$(this).parent().parent().fadeIn();
});
$options.not("#" + $currentSelection).parent().parent().fadeOut(); //Hide don't match
} else if($currentSelection == "showall"){ //If 'Select model'
$options.parent().parent().fadeIn();
} else {
$options.children().filter("." + $selectprod.val()).fadeIn();
}
如果选择了模型,则需要先显示所有选项,以便显示隐藏选项。