第一个下拉隐藏在第二个下拉点击事件

时间:2014-09-19 10:35:27

标签: javascript jquery html asp.net

我在单页中使用2个codrops dropdwon菜单。我想在用户点击第二个下拉菜单时关闭第一个下拉菜单。

我在我的项目中使用下面的代码。

<select id="Select1" class="cd-select">
    <option value="-1" selected>Menu 1</option>
    <option value="7" >subMenu1</option>
    <option value="8" >subMenu2</option>
    <option value="9" >subMenu3</option></select>

// 2nd Menu
<select id="Select2" class="cd-select">
    <option value="-1" selected>Menu 2</option>
    <option value="2" >subMenu1</option>
    <option value="5" >subMenu2</option></select>

.aspx Page Java Script

<script type="text/javascript">
    $(function () {
        $('#Select1').dropdown({
            gutter: 5,
            stack: false,
            delay: 100,
            slidingIn: 100
        });
        $('#Select2').dropdown({
            gutter: 5,
            stack: false,
            delay: 100,
            slidingIn: 100
        });
    });
</script>

我想在用户点击Select1时关闭Select2。请给我建议如何做到这一点。 帮助我。

2 个答案:

答案 0 :(得分:0)

更新: 检查这个问题的答案: jquery drop down menu closing by clicking outside

我把它添加到你的小提琴中,它在功能上有效,但是下拉列表失去了它们的布局。 您可以尝试在单击其他下拉列表时调用hide()函数,而不是$(document)。

答案 1 :(得分:0)

我得到了解决方案 - 我只是将此代码放在document.ready()函数中并且它可以正常工作。

$('.cd-dropdown').click(function() {
$('.cd-active').not($(this))
        .removeClass('cd-active')
        .children('ul').css('height', 'auto')
        .children('li').css('top', 0);});

由于