如何从jquery的onclick事件中的下拉子菜单中获取bootstrap下拉菜单的值?

时间:2015-05-28 04:41:43

标签: jquery html twitter-bootstrap drop-down-menu

我正在使用boostrap下拉菜单和子菜单。单击子菜单中的元素,我想获取下拉菜单元素(父级)和子菜单元素。我已经写了一个下拉菜单点击事件,我能够得到子菜单。但我正在努力寻找子菜单的父元素。 请帮忙!

HTML:

       <ul id="ddltest" class="ddlSample dropdown-menu" role="menu">

            @foreach (var item in (IEnumerable<SelectListItem>)ViewBag.test)
            {
                <li class="dropdown-submenu">
                    <a href="#" class="dropdown-toggle" data-toggle="dropdown" id="test1">
                        @item.Text

                    </a>
                    <ul class="ddlSample dropdown-menu" role="menu" id="testorder">
                        <li>
                            <a tabindex="-1" href="#">test1</a>

                        </li>
                        <li>
                            <a tabindex="-1" href="#">test2</a>

                        </li>
                    </ul>
                </li>
            }
        </ul>

Jquery:

 $('.dropdown-menu li a').click(function () {

    var Submenutext = $(this).text();
    var parentmenutext = $(this).parent().closest('li');
    alert(Submenutext);
    alert(parentmenutext);


});

提前致谢!

3 个答案:

答案 0 :(得分:0)

试试这个看看这是否适合你:

$('.dropdown-menu li a').click(function () {
    var Submenutext = $(this).text();
    var parentmenutext = $(this).closest('li.dropdown-submenu > a').text();
    //or  var parentmenutext = $(this).closest('ul').parent().find('a').text(); 
    alert(Submenutext );
    alert(parentmenutext);
});

答案 1 :(得分:0)

试试这个看看这是否适合你:

$('.dropdown-menu li a').click(function () {
    var Submenutext = $(this).text();
    var parentmenutext = $(this).closest('li.dropdown-submenu > a').text();
    alert(Submenutext);
    alert(parentmenutext);
});

答案 2 :(得分:0)

借助这些方法Fiddleeq()

试试这个parents()
$('.dropdown-menu li a').click(function () {
    var Submenutext = $(this).text();
    var parentmenutext = $(this).parents().eq(3).find('a').text();
    alert(Submenutext);
    alert(parentmenutext);
});