jQuery防止下拉菜单中的默认功能

时间:2013-11-22 12:13:57

标签: javascript jquery html css drop-down-menu

我在下拉菜单中创建了一个智能搜索组件。应允许用户在下拉列表中进行搜索,具体取决于在菜单中提供的input = text中输入的值。

但是当我点击输入时,菜单会关闭。 我也尝试过使用preventDefault,但它仍无效。

HTML:

<input type="text" readonly="readonly" value="">
<button class="btn i dropdown-toggle" data-toggle="dropdown"> <i class="caret-down"></i>
</button>
<div class="dropdown-menu smart">
    <input type="text" placeholder="Search">
    <ul class="search-options">
        <li><a href="#">Something</span></a>
        </li>
    </ul>
</div>

JS:

// jQuery to prevent default close 
$('body').on('click', '.dropdown-menu.smart input', function (event) {
    event.preventDefault();
});

1 个答案:

答案 0 :(得分:5)

编写以下代码,并保持下拉列表

$('.dropdown-menu').click(function(e) {
        e.stopPropagation();
});