根据用户的输入即时过滤对象数组可以通过以下步骤实现:
以下是一个示例代码,演示如何根据用户输入即时过滤对象数组:
<!DOCTYPE html>
<html>
<head>
<title>对象数组过滤示例</title>
<style>
ul {
list-style-type: none;
padding: 0;
}
li {
margin-bottom: 5px;
}
</style>
</head>
<body>
<input type="text" id="filterInput" placeholder="输入过滤条件">
<ul id="resultList"></ul>
<script>
// 假设有一个对象数组
var objects = [
{ name: 'Apple', category: 'Fruit' },
{ name: 'Banana', category: 'Fruit' },
{ name: 'Carrot', category: 'Vegetable' },
{ name: 'Tomato', category: 'Vegetable' },
{ name: 'Orange', category: 'Fruit' }
];
// 监听输入框的输入事件
var filterInput = document.getElementById('filterInput');
filterInput.addEventListener('input', function() {
var filterValue = filterInput.value.toLowerCase(); // 获取用户输入并转为小写
// 过滤对象数组
var filteredObjects = objects.filter(function(obj) {
return obj.name.toLowerCase().includes(filterValue) || obj.category.toLowerCase().includes(filterValue);
});
// 更新显示结果
var resultList = document.getElementById('resultList');
resultList.innerHTML = ''; // 清空之前的结果
filteredObjects.forEach(function(obj) {
var li = document.createElement('li');
li.textContent = obj.name + ' - ' + obj.category;
resultList.appendChild(li);
});
});
</script>
</body>
</html>
在这个示例中,用户可以在输入框中输入过滤条件,代码会根据用户输入的条件过滤对象数组,并将过滤结果实时展示在一个无序列表中。用户可以根据对象的名称或类别进行过滤。
腾讯云相关产品和产品介绍链接地址:
领取专属 10元无门槛券
手把手带您无忧上云