javascript - 如何拦截 bootstrap-hover-dropdown 选择?

标签 javascript jquery twitter-bootstrap

我想拦截从下拉菜单中做出的选择。这个菜单是用 https://github.com/CWSpear/bootstrap-hover-dropdown 制作的但这肯定不会改 rebase 本原理。 我的 HTML 代码是:

<div class="row">
    <div class="col-md-5">
        <div class="form-group text">
            <label class=" control-label" for="comment">Comment :</label>
            <div class="input-group">
                <input type="text" name="comment" class="form-control " placeholder="Free comment" id="" value="" /> 
                <span class="input-group-btn">
                    <button class="btn btn-success add_language dropdown-toggle"
                        id="add_language-1"
                        title="Add a language"
                        data-toggle="dropdown"
                        data-hover="dropdown"> <i class="fa fa-plus"></i><span class="caret"></span>
                    </button>
                    <ul class="dropdown-menu" id="dropdown-menu">
                        <li><a tabindex="1">English</a></li>
                        <li><a tabindex="2">Spanish</a></li>
                        <li><a tabindex="3">German</a></li>
                    </ul>
                </span>
            </div>
        </div>
    </div>
</div>

这是我想出的拦截选择的方法,但这不起作用,更准确地说,我实际上对 tabindex 的值感兴趣:

$( document ).ready(function($) {
    $('.dropdown-toggle').dropdownHover();

    $('.dropdown-menu').on('click', function(event){
        event.preventDefault();
        var value = $('#dropdown-menu').selected();
        alert(value);
    });
}

事实上 onclick 甚至没有被调用。 我在这里犯了什么错误? 这里是对应的jsFiddle

最佳答案

如果您同意选择元素,您可以像这样标记菜单:

<select class="dropdown-menu" multiple>
  <option value="1">English</option>
  <option value="2">Spanish</option>
  <option value="3">German</option>
</select>

然后使用 jQuery's val() 提取该值方法。

$(document).ready(function() {
  $('.dropdown-menu').on('click', function(event){
    event.preventDefault();
    console.log($('.dropdown-menu').val());
  }); 
});

关于javascript - 如何拦截 bootstrap-hover-dropdown 选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30154390/

相关文章:

javascript - 在javascript中将指数数转换为整数

javascript - 用于 Bootstrap 网站的 jquery 轮播,在滚动时覆盖我的页面

javascript - 如何让 jQuery 的 $.each() 函数根据条件跳过某些对象?

javascript - 如何使用 Protractor 发送 POST

javascript - For 循环没有按照我期望的方式运行

javascript - 获取 url 的 Angular 变化

jquery - 让 css3 动画即使在悬停时也能播放?

html - 将按钮与文本区域垂直对齐

html - Bootstrap 3.1.1 导航栏折叠时的不同布局

javascript - bootstrap 轮播内的剑道图表