0

我有这个条件选择,它通常工作得很好,但我想做一些小的调整。在这里看我的小提琴

如果您选择一个品牌,例如 Apple,您可以选择两种型号。如果您选择一个模型,它工作正常。

但是(a)如果您再次单击“选择型号”(仍然在第一个框中选择“Apple”),我想像以前一样显示所有 Apple 项目。

(b) 如果您选择其他 Apple 型号,则不会发生任何事情。

我想解决方案在if ($currentSelection != "showall") {}-statement 中,但我无法让它工作。

谁能指出我正确的方向?

谢谢。

4

1 回答 1

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();
}

如果选择了一个模型,您需要先显示所有选项,以便显示隐藏的选项。

于 2013-01-11T08:47:55.510 回答