JQuery 使用下拉菜单选择多个 Div

标签 jquery drop-down-menu jquery-selectors

长时间浏览,第一次发帖。

我想做的是让用户选择要在下拉菜单中显示的周数,然后显示那么多的 div。现在我已经设置好了可以显示一个或全部 div,但我想对之前的 div 进行此操作。

现在我有:

<SELECT name="number_of_weeks" id="number_of_weeks">
<OPTION value = "week1">1</OPTION>
<OPTION value = "week2">2</OPTION>
<OPTION value = "week3">3</OPTION>
</SELECT>

<div id = "week1" class = "weekmenu">
Week 1 </br>
</div>
<div id = "week2" class = "weekmenu">
Week 2 </br>
</div>
<div id = "week3" class = "weekmenu">
Week 3 </br>
</div>

对于 JavaScript:

$(document).ready(function () {
        $('.weekmenu').hide();
        $('#week1').show();
        $('#number_of_weeks').change(function () {
            $('.weekmenu').hide();
            $('#'+$(this).val()).show();
        });
    });

输出应如下所示:如果选择 week1,则仅显示 week1 div。如果选择第 2 周,则将显示 week1 和 week2 div。如果选择第 3 周,则会显示 week1、week2 和 week3 div。

我一直在思考这个问题...我尝试创建一些嵌套的 div,但结果不太正确。我还尝试为多个 div 提供自己的类,然后尝试显示这些类。

JSFiddle:http://jsfiddle.net/meRcr/21/

感谢任何帮助!

最佳答案

只需将 jQuery 的最后一行更改为:

  $('#' + $(this).val()).prevUntil('select').addBack().show();

<强> jsFiddle example

完整代码:

$(document).ready(function () {
    $('.weekmenu').hide();
    $('#week1').show();
    $('#number_of_weeks').change(function () {
        $('.weekmenu').hide();
        $('#' + $(this).val()).prevUntil('select').addBack().show();
    });
});

关于JQuery 使用下拉菜单选择多个 Div,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16601079/

相关文章:

javascript - jQuery 在输入字段上显示提交按钮单击

jquery - 如何选择具有相同名称的所有输入并按名称对其进行索引

javascript - 下拉值在满足条件时重置为第一个值

drop-down-menu - Google表格下拉列表不会保持有序

javascript - header 中带有 javascript 链接的 JQuery slidetoggle div 不会触发

javascript - 如何使用 jQuery 访问通过 Mustache 渲染到页面中的元素

jquery - 悬停时隐藏CSS下拉菜单

jquery - 使用 jQuery .closest() 遍历 DOM

jquery - 如果未使用 jquery 在 html 中登录,则重定向用户

javascript - jQuery : how to sum price each row in table