boostrap3,3,5的dropdown缺陷

boostrap的dropdown点击时无法获取到点击的元素,bootstrap提供的事件无法获取点击的元素,看bootrap的源码,只提供dropdown-toggle所在的元素。不知算不算是个缺陷
已邀请:

wt2510

赞同来自:

我也遇到这问题我想手动控制下拉不消失,可以无果啊

rew1011

赞同来自:

bootstrap的dropdown提供的事件分别是:显示前、显示后、隐藏前、隐藏后,而你的需求是获取点击时的元素,jQuery实现即可。
HTML code:
<div class="dropdown" id="myDropdown">
        <button class="btn btn-default dropdown-toggle" id="dLabel" type="button" data-toggle="dropdown" aria-haspopup="true" aria-expanded="false">
            Dropdown trigger
            <span class="caret"></span>
        </button>
        <ul class="dropdown-menu" aria-labelledby="dLabel">
            <li><a href="#">Action</a></li>
            <li><a href="#">Another action</a></li>
            <li><a href="#">Something else here</a></li>
            <li><a href="#">Separated link</a></li>
        </ul>
    </div>

jQuery code:
$('#myDropdown').on('shown.bs.dropdown', function () {
            alert("下拉框已显示");//这是bootstrap提供的4事件之一。
        });
        $('#myDropdown ul li').on('click', function () {
            alert($(this).text());//这是jQuery的自定义监听事件。
        });

wt2510

赞同来自:

$('#myDropdown').on('hidden.bs.dropdown', function () {
//监控鼠标离开下拉菜单事件,当离开时,再次弹出
$('.dropdown-toggle').dropdown('toggle');
//alert("下拉框已显示");//这是bootstrap提供的4事件之一。
});

能实现不关闭, 那要是想关闭的时候 该怎么写?

wt2510

赞同来自:

搞定了。 $('.dropdown-menu').hide(); jquery隐藏他就可以了

wt2510

赞同来自:

看来还是不行。隐藏也不是办法, 他还抓取着光标

要回复问题请先登录注册