我有一个使用Smartmenus Bootstrap插件的下拉菜单。在下拉菜单中,有一个搜索按钮。当你输入的时候,它会自动显示过滤的菜单。如何使过滤后的菜单只在单击搜索按钮时显示?
这是我做的jsfiddle。
以下是搜索功能的Javascript:
$("#searchText").on("keyup", function () {
var g = $(this).val().toLowerCase();
var parMenuArr = [];
var count = 0;
$(".menu").each(function () {
var s = $(this).text().toLowerCase();
if (s.indexOf(g) !== -1) {
$(this).closest('.menu').show();
var parMenu = $(this).attr('pm');
if (parMenu != null && parMenu != '') {
var add = 'true';
for (var i = 0; i < parMenuArr.length; i++) {
if (parMenuArr[i] == parMenu) {
add = 'false';
break;
}
}
if (add == 'true') {
parMenuArr[count] = parMenu;
count = count + 1;
}
}
} else {
$(this).closest('.menu').hide();
}
//$(this).closest('.menu')[s.indexOf(g) !== -1 ? 'show' : 'hide']();
});
$(".menu").each(function () {
var menu = $(this).attr('sm');
if (menu != null && menu != '') {
for (var i = 0; i < parMenuArr.length; i++) {
if (parMenuArr[i].indexOf(menu) != -1) {
$(this).closest('.menu').show();
}
if (menu == parMenuArr[i]) {
$(this).closest('.menu').show();
break;
}
}
}
});
});https://stackoverflow.com/questions/36994968
复制相似问题