我正在使用 jQuery 从搜索字段中获取字符串并隐藏不匹配的项目。它遍历 div 列表并使用 $(this).fadeOut(); 隐藏这些元素。
这很好用,但我想在该搜索中添加进一步的搜索。我添加了一个额外的搜索字段,但当然它不会继承先前搜索的淡出,而是从头开始。
我需要一种方法来指定搜索只搜索列表的可见元素。这需要以相反的顺序工作,因为用户可能会在第二个搜索字段中输入,然后是第一个。
这是我的代码的 JSFiddle,说明了问题
以及一个搜索功能的代码片段
$("#filter").keyup(function () {
var filter = $(this).val(),
count = 0;
$(".records2 div").each(function () {
// If the list item does not contain the text phrase fade it out
if ($(this).text().search(new RegExp(filter, "i")) < 0) {
$(this).fadeOut();
// Show the list item if the phrase matches and increase the count by 1
} else {
$(this).show();
count++;
}
});
});