隐藏的下拉选项框一旦选中就会消失
Hidden drop-down option box once selected disappears
请原谅我,因为我是这里的新成员。我似乎无法使代码正常工作。 select 选项允许各种 selection 大小。如果自定义尺寸是selected,会出现一个隐藏的下拉选项框。这里的问题是一旦下拉选项框被 selected,它就消失了。几个月来我一直在努力解决这个问题。希望有人能帮助我。我提前谢谢!
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>jQuery Show Hide Using Select Box</title>
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("select").change(function() {
$(this).find("option:selected").each(function() {
if ($(this).attr("value") == "customsize") {
$(".customsize").show();
} else {
$(".box").hide();
}
});
}).change();
});
</script>
</head>
<body>
<div>
<select name="product[]" style="display: block; width: 256px; border-color: rgb(204, 204, 204); font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif; font-size: 0.9em; padding: 0.3em;">
<option>Select Size</option>
<option style="box-sizing: border-box;" value="30">Chest 30in</option>
<option style="box-sizing: border-box;" value="32">Chest 32in</option>
<option style="box-sizing: border-box;" value="34">Chest 34in</option>
<option style="box-sizing: border-box;" value="36">Chest 36in</option>
<option style="box-sizing: border-box;" value="38">Chest 38in</option>
<option style="box-sizing: border-box;" value="40">Chest 40in</option>
<option value="customsize">Custom Size*</option>
</select><br />
</div>
<div class="customsize box">
<select name="product[]" style="display: block; width: 256px; border-color: #cccccc; font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; font-size: 0.9em; padding: 0.3em;">
<option style="box-sizing: border-box;" value=" ">Body Length (in)</option>
<option style="box-sizing: border-box;" value="30">30</option>
<option style="box-sizing: border-box;" value="31">31</option>
<option style="box-sizing: border-box;" value="32">32</option>
<option style="box-sizing: border-box;" value="33">33</option>
<option style="box-sizing: border-box;" value="34">34</option>
<option style="box-sizing: border-box;" value="35">35</option>
<option style="box-sizing: border-box;" value="36">36</option>
<option style="box-sizing: border-box;" value="37">37</option>
<option style="box-sizing: border-box;" value="38">38</option>
<option style="box-sizing: border-box;" value="39">39</option>
<option style="box-sizing: border-box;" value="40">40</option>
</select><br />
</div>
</body>
</html>
您正在使用 jQuery 选择器选择两个 select
元素。而是给顶部 <select>
一个 id="pick_size"
。然后在你的 jQuery 中将 $("select")
更改为 $("#pick_size")
就可以了。
这里是 working fiddle。
请原谅我,因为我是这里的新成员。我似乎无法使代码正常工作。 select 选项允许各种 selection 大小。如果自定义尺寸是selected,会出现一个隐藏的下拉选项框。这里的问题是一旦下拉选项框被 selected,它就消失了。几个月来我一直在努力解决这个问题。希望有人能帮助我。我提前谢谢!
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="utf-8" />
<title>jQuery Show Hide Using Select Box</title>
<script type="text/javascript" src="http://code.jquery.com/jquery.min.js"></script>
<script type="text/javascript">
$(document).ready(function() {
$("select").change(function() {
$(this).find("option:selected").each(function() {
if ($(this).attr("value") == "customsize") {
$(".customsize").show();
} else {
$(".box").hide();
}
});
}).change();
});
</script>
</head>
<body>
<div>
<select name="product[]" style="display: block; width: 256px; border-color: rgb(204, 204, 204); font-family: "Lucida Sans Unicode", "Lucida Grande", sans-serif; font-size: 0.9em; padding: 0.3em;">
<option>Select Size</option>
<option style="box-sizing: border-box;" value="30">Chest 30in</option>
<option style="box-sizing: border-box;" value="32">Chest 32in</option>
<option style="box-sizing: border-box;" value="34">Chest 34in</option>
<option style="box-sizing: border-box;" value="36">Chest 36in</option>
<option style="box-sizing: border-box;" value="38">Chest 38in</option>
<option style="box-sizing: border-box;" value="40">Chest 40in</option>
<option value="customsize">Custom Size*</option>
</select><br />
</div>
<div class="customsize box">
<select name="product[]" style="display: block; width: 256px; border-color: #cccccc; font-family: 'Lucida Sans Unicode', 'Lucida Grande', sans-serif; font-size: 0.9em; padding: 0.3em;">
<option style="box-sizing: border-box;" value=" ">Body Length (in)</option>
<option style="box-sizing: border-box;" value="30">30</option>
<option style="box-sizing: border-box;" value="31">31</option>
<option style="box-sizing: border-box;" value="32">32</option>
<option style="box-sizing: border-box;" value="33">33</option>
<option style="box-sizing: border-box;" value="34">34</option>
<option style="box-sizing: border-box;" value="35">35</option>
<option style="box-sizing: border-box;" value="36">36</option>
<option style="box-sizing: border-box;" value="37">37</option>
<option style="box-sizing: border-box;" value="38">38</option>
<option style="box-sizing: border-box;" value="39">39</option>
<option style="box-sizing: border-box;" value="40">40</option>
</select><br />
</div>
</body>
</html>
您正在使用 jQuery 选择器选择两个 select
元素。而是给顶部 <select>
一个 id="pick_size"
。然后在你的 jQuery 中将 $("select")
更改为 $("#pick_size")
就可以了。
这里是 working fiddle。