根据两个单独的选择选项显示 div
我偶然发现了一个问题。
我有两个不同的选择字段。每个都有颜色选项:蓝色、绿色、黑色、黄色。我想根据您所做的选择显示不同的 div,如下所示:
选择黄色+黑色显示 div#1 选择黑色+黄色显示 div#2 ETC。 等等。
我怎样才能以聪明的方式做到这一点?
更新:
这是我现在拥有的一个代码片段(它执行我想要的操作,但仅取决于一个选择元素):
<script>
$(document).ready(function() {
$(function() {
$('#thecolor').change(function(){
$('#box_image, #box_image2, #box_image3, #box_image4').hide();
$('.' + $(this).val()).show();
});
});
});
<select id="thecolor">
<option>Choose outer color</option>
<option value="blue">Blue</option>
<option value="red">Red</option>
<option value="dark_green">Green</option>
<option value="purple">Purple</option>
</select>
进而
<div id="box_image" style="display:none;" class="blue">
<img src="images/wine-bottle-box_blue.png"/>
</div>
I have stumbled upon a problem.
I have two different select fields. Each of these have color options: blue, green, black, yellow. I want to show different divs depending on which selctions you make like so:
Selection yellow+black shows div#1
Selection black+yellow shows div#2
etc.
etc.
How can I do this in a smart way?
Update:
Here is a code snippet I have right now (it does what I want but only depending on one select element):
<script>
$(document).ready(function() {
$(function() {
$('#thecolor').change(function(){
$('#box_image, #box_image2, #box_image3, #box_image4').hide();
$('.' + $(this).val()).show();
});
});
});
<select id="thecolor">
<option>Choose outer color</option>
<option value="blue">Blue</option>
<option value="red">Red</option>
<option value="dark_green">Green</option>
<option value="purple">Purple</option>
</select>
and then
<div id="box_image" style="display:none;" class="blue">
<img src="images/wine-bottle-box_blue.png"/>
</div>
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(2)
为此,您可以使用 jQuery 中的
toggle
函数来显示/隐藏基于 2 个选择列表的值的元素。只需将两个选择列表挂钩到同一个点击处理程序并检查条件即可。实例:http://jsfiddle.net/6AUn6/
To do this you can use the
toggle
function in jQuery to show/hide an element based on the values of 2 select lists. Just hook both select lists up to the sameclick
handler and check the condition.Live example: http://jsfiddle.net/6AUn6/
通过选项组合命名你的 div 的 id 怎么样?
因此,选择
yellow+black
将显示id为div_yellow_black
的div。在 jquery 中,类似
How about naming your div's id by the options combination.
So selecting
yellow+black
will display div with id likediv_yellow_black
.In jquery, something like