jQuery 搜索提示是一种常见的前端交互功能,它允许用户在输入框中输入内容时,实时显示与输入内容相关的建议列表。这种功能通常用于提高用户体验,减少用户的输入负担。
jQuery 搜索提示主要依赖于以下几个基础概念:
keyup
或 input
事件,以便在用户输入时触发相应的处理逻辑。以下是一个简单的 jQuery 搜索提示示例,基于本地数据集:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>jQuery Search Suggestion</title>
<style>
.suggestions {
list-style-type: none;
padding: 0;
margin: 0;
border: 1px solid #ccc;
display: none;
}
.suggestions li {
padding: 8px;
cursor: pointer;
}
.suggestions li:hover {
background-color: #f0f0f0;
}
</style>
</head>
<body>
<input type="text" id="search-input" placeholder="Type to search...">
<ul class="suggestions" id="suggestions-list"></ul>
<script src="https://code.jquery.com/jquery-3.6.0.min.js"></script>
<script>
$(document).ready(function() {
const data = ["Apple", "Banana", "Cherry", "Date", "Elderberry", "Fig", "Grape"];
$('#search-input').on('input', function() {
const query = $(this).val().toLowerCase();
const suggestions = data.filter(item => item.toLowerCase().includes(query));
$('#suggestions-list').empty();
if (query.length > 0) {
suggestions.forEach(suggestion => {
$('#suggestions-list').append(`<li>${suggestion}</li>`);
});
$('#suggestions-list').show();
} else {
$('#suggestions-list').hide();
}
});
$(document).on('click', '#suggestions-list li', function() {
$('#search-input').val($(this).text());
$('#suggestions-list').hide();
});
$(document).click(function(event) {
if (!$(event.target).closest('#search-input, #suggestions-list').length) {
$('#suggestions-list').hide();
}
});
});
</script>
</body>
</html>
通过以上方法,可以有效实现和优化 jQuery 搜索提示功能。
领取专属 10元无门槛券
手把手带您无忧上云