// 示例代码:简单的 JavaScript 自动补全功能
// 创建一个输入框和一个用于显示建议的 div
const input = document.createElement('input');
input.setAttribute('type', 'text');
input.setAttribute('id', 'autocomplete-input');
document.body.appendChild(input);
const suggestionsDiv = document.createElement('div');
suggestionsDiv.setAttribute('id', 'suggestions');
document.body.appendChild(suggestionsDiv);
// 定义一些示例数据
const data = ['Apple', 'Banana', 'Orange', 'Mango', 'Grapes', 'Pineapple'];
// 监听输入框的变化
input.addEventListener('input', function () {
const value = this.value;
const suggestions = [];
// 如果输入框为空,清空建议列表
if (value.length === 0) {
suggestionsDiv.innerHTML = '';
return;
}
// 根据输入值过滤数据
data.forEach(item => {
if (item.toLowerCase().startsWith(value.toLowerCase())) {
suggestions.push(item);
}
});
// 显示建议
suggestionsDiv.innerHTML = '';
suggestions.forEach(suggestion => {
const suggestionElement = document.createElement('div');
suggestionElement.textContent = suggestion;
suggestionElement.classList.add('suggestion');
suggestionsDiv.appendChild(suggestionElement);
// 点击建议项时自动填充输入框
suggestionElement.addEventListener('click', function () {
input.value = suggestion;
suggestionsDiv.innerHTML = '';
});
});
});
HTML 结构:
input
元素用于用户输入。div
元素用于显示建议列表。数据源:
data
,其中包含了一些水果名称,作为自动补全的候选数据。事件监听:
input
事件。data
数组中的匹配项,并将匹配结果展示在 suggestionsDiv
中。建议项点击:
样式:
suggestion
类名,可以根据需要添加 CSS 样式以美化界面。这个示例展示了如何使用 JavaScript 实现一个简单的自动补全功能。
上一篇:js 加载图片
下一篇:js swiper
Laravel PHP 深圳智简公司。版权所有©2023-2043 LaravelPHP 粤ICP备2021048745号-3
Laravel 中文站