我正在尝试使用 jQuery 在 keyup 上过滤带有标题(类别名称)的多个列表(特定类别的书籍)。我只想过滤搜索列表中的项目(特定书籍),但不过滤标题。如果列表为空,则标题(类别名称)应该消失。到目前为止,我的工作是过滤多个列表,但如果列表为空,标题不会消失。我还想从过滤器中排除 .custom-books 列表。
HTML:
<input type="text" id="search" />
<ul id="workflow_books">
<li>
<h6 class="custom"> Custom Books</h6>
<ul>
<li class="custom-books">
<a>Don't see your book in our list? Add it yourself!</a>
</li>
</ul>
</li>
<li>
<h6>Academic</h6>
<ul>
<li>
<a>Academic Book One</a>
</li>
<li>
<a>Academic Book Two</a>
</li>
</ul>
</li>
<li>
<h6>Botany</h6>
<ul>
<li>
<a>Botany Book One</a>
</li>
<li>
<a>Botany Book Two</a>
</li>
</ul>
</li>
</ul>
和我的 jQuery:
var $products = $('#workflow_books li ul li a')
$("#search").keyup(function() {
$products.show().filter(function() {
return !re.test($(this).text());
}).hide();
})
有任何想法吗?
谢谢和击掌!麦克风