在JavaScript中实现下拉菜单筛选数据的功能,通常涉及到以下几个基础概念:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>筛选数据示例</title>
</head>
<body>
<select id="filterSelect">
<option value="all">全部</option>
<option value="fruit">水果</option>
<option value="vegetable">蔬菜</option>
</select>
<ul id="resultList">
<!-- 筛选结果将显示在这里 -->
</ul>
<script src="script.js"></script>
</body>
</html>// 假设我们有以下数据
const data = [
{ name: '苹果', type: 'fruit' },
{ name: '香蕉', type: 'fruit' },
{ name: '胡萝卜', type: 'vegetable' },
{ name: '西红柿', type: 'vegetable' },
{ name: '橙子', type: 'fruit' }
];
// 获取DOM元素
const filterSelect = document.getElementById('filterSelect');
const resultList = document.getElementById('resultList');
// 初始化显示所有数据
function displayData(items) {
resultList.innerHTML = '';
items.forEach(item => {
const li = document.createElement('li');
li.textContent = item.name;
resultList.appendChild(li);
});
}
// 初始显示所有数据
displayData(data);
// 添加事件监听
filterSelect.addEventListener('change', function() {
const selectedValue = this.value;
if (selectedValue === 'all') {
displayData(data);
} else {
const filteredData = data.filter(item => item.type === selectedValue);
displayData(filteredData);
}
});通过上述步骤和代码示例,可以实现一个简单的下拉菜单数据筛选功能,并理解其背后的原理和应用场景。如果遇到具体问题,可以根据错误表现进行针对性的调试和优化。
没有搜到相关的文章