【发布时间】:2014-11-18 23:51:38
【问题描述】:
我有以下代码:http://jsfiddle.net/tucuta/pvvmvdpg/
$("#mySelect").change(function(){
$("#div1").fadeIn("fast")[ ($(this).val() == 'value1') ? 'show' : 'hide' ]();
$("#div2").fadeIn("fast")[ ($(this).val() == 'value2') ? 'show' : 'hide' ]();
});
$("#mySelect").change();
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<select id="mySelect" multiple="multiple">
<option value="value1">First</option>
<option value="value2">Second</option>
<option value="value3">Third</option>
<option value="value4">Fourth</option>
</select>
<div id="div1">Div 1</div>
<div id="div2">Div 2</div>
如果是普通选择,代码可以正常工作,但如果是多选,则无法正常工作。
例如,如果我选择首先显示 div 1,但如果我先选择然后选择第二个,则它既不显示 div1 也不显示 div2。
有人请帮助我,我提前谢谢你
【问题讨论】:
-
.val()多选返回一个数组。碰巧["value1"] == "value1"在 javascript 中返回 true。 -
您好,感谢您的及时回复。我问,应该这样做,请举个例子......提前谢谢
标签: jquery select hide show show-hide