jQuery文本框下拉菜单是一种常见的用户界面组件,它允许用户通过输入文本来筛选和选择预定义的选项。这种组件通常由一个文本输入框和一个下拉列表组成,用户可以在输入框中输入文本,下拉列表会根据输入的内容动态显示匹配的选项。
以下是一个简单的jQuery文本框下拉菜单的示例代码:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>jQuery Textbox Dropdown</title>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<style>
.dropdown-menu {
display: none;
position: absolute;
background-color: #f9f9f9;
min-width: 160px;
box-shadow: 0px 8px 16px 0px rgba(0,0,0,0.2);
z-index: 1;
}
.dropdown-menu a {
color: black;
padding: 12px 16px;
text-decoration: none;
display: block;
}
.dropdown-menu a:hover {
background-color: #f1f1f1;
}
</style>
</head>
<body>
<input type="text" id="search-box" placeholder="Search...">
<div id="dropdown-menu" class="dropdown-menu">
<a href="#">Apple</a>
<a href="#">Banana</a>
<a href="#">Cherry</a>
<a href="#">Date</a>
<a href="#">Elderberry</a>
</div>
<script>
$(document).ready(function(){
$('#search-box').on('input', function(){
var searchValue = $(this).val().toLowerCase();
$('#dropdown-menu a').each(function(){
var text = $(this).text().toLowerCase();
if (text.indexOf(searchValue) > -1) {
$(this).show();
} else {
$(this).hide();
}
});
});
$('#search-box').on('focus', function(){
$('#dropdown-menu').show();
});
$('#search-box').on('blur', function(){
setTimeout(function(){
$('#dropdown-menu').hide();
}, 200);
});
});
</script>
</body>
</html>
display
属性,确保JavaScript代码在DOM加载完成后绑定事件。input
事件监听输入框的变化,并检查筛选逻辑是否正确。position: absolute
或position: fixed
来定位下拉菜单,并根据需要调整top
和left
属性。通过以上示例代码和解决方法,你应该能够实现一个基本的jQuery文本框下拉菜单,并解决常见的相关问题。
没有搜到相关的文章