jQuery,用一个字符串隐藏或显示一个选择菜单的多个子项

jQuery, hide or show multiple children of a selection menu with in one string

我想show/hide关于之前选择的选项的多个选项。

我可以用多个字符串来做,但我想在 "one string".

ai95 是我的第一个下拉菜单,ai96 是第二个。

例如;

$(document).ready(function(){

var uniad = $('[name*="_ai95_"]').val();

if (uniad > 0 && uniad < 2)
{
$('[name*="_ai96_"]').children().hide();
$('[name*="_ai96_"]').children('option[value="1"]').show();
$('[name*="_ai96_"]').children('option[value="15"]').show();
$('[name*="_ai96_"]').children('option[value="25"]').show();

}else if (uniad > 1 && uniad < 3)
{ 
$('[name*="_ai96_"]').children().hide();
$('[name*="_ai96_"]').children('option[value="11"]').show();
$('[name*="_ai96_"]').children('option[value="35"]').show();
$('[name*="_ai96_"]').children('option[value="25"]').show();

and more "else if" like them...}

这只是我想做的一部分。我只想:首先将它们全部隐藏,然后通过像这样缩小字符串来显示其中的一些:

else if (uniad > 1 && uniad < 3){ 
$('[name*="_ai96_"]').children().hide();
$('[name*="_ai96_"]').children('option[value="11"]', 'option[value="35"]','option[value="25"]').show();`

有什么办法吗?谢谢

是这样的吗?

var selectEl = $("#second-select");

selectEl.children().hide()
        .end() // return to the parent node
        .children("[value='3'], [value='5'], [value='12']").show();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
Second select box:
<select id="second-select" name="uc_autorilist[]" size="5" multiple>
     <option value="3">Rose Tremain</option>
     <option value="4">Jonathan Coe</option>           
     <option value="5">Cecilia Ahern</option>
     <option value="6">Marinel Serban</option>
     <option value="7">Emanuela Cherchez</option>
     <option value="8">Peter Buckley</option>
     <option value="9">Clark Duncan</option>
     <option value="10">Carlos-Ruiz Zafon</option>
     <option value="11">Catalin Paduraru</option>
     <option value="12">Dan-Silviu Boerescu</option>
</select>