【发布时间】:2016-07-14 03:36:50
【问题描述】:
我有三个选择菜单。
<form>
<select id="mass" name="mass">
<option value="Blank" selected>--</option>
<option value="Light">Light</option>
<option value="Medium">Medium</option>
<option value="Heavy">Heavy</option>
</select>
<select id="colour" name="colour">
<option value="Blank" selected>--</option>
<option value="Red">Red</option>
<option value="Green">Green</option>
<option value="Blue">Blue</option>
</select>
<select id="textureColour" name="textureColour">
<option value="Blank" selected>--</option>
<option value="Orange">Orange</option>
<option value="Purple">Purple</option>
<option value="Black">Black</option>
</select>
</form>
我希望显示第一个菜单,隐藏第二个和第三个菜单,直到被调用。
如果第一个菜单从默认选项更改,我希望显示第二个菜单。
在第二个菜单中做出选择后,我希望显示第三个菜单。
但是,如果第一个菜单中的选定值是“中”或“重”,我只想显示第三个菜单。选择默认的“空白”或“浅色”应该会隐藏第三个菜单。
目前它没有按我的意愿运行。
$(function() {
var mass = $('#mass');
var colour = $('#colour');
var textureColour = $('#textureColour');
mass.change(function() {
if (mass.val() != 'Blank') {
$(colour).show();
} else {
$(colour).hide();
}
if (mass.val() === 'Light') {
$(textureColour).show();
} else {
$(textureColour).hide();
}
}).trigger('change');
colour.change(function() {
if ((mass.val() === 'Medium') || (mass.val() === 'Heavy')) {
$(textureColour).show();
} else {
$(textureColour).hide();
}
}).trigger('change');
});
【问题讨论】:
-
这是你想要的吗? jsfiddle.net/qd15hkfr/2
-
不,因为如果我将值从“中”或“重”更改回“轻”,我希望隐藏第三个菜单。
标签: javascript jquery html css menu