我一直在学习有关过滤器和在我的页面中显示内容的内容,现在我添加了一个<select>
元素来进行搜索,所以我从文本输入中基于我的函数中的select元素的函数并且工作正常,请检查Jsfiddle,但是如果我想使用select来过滤Category: something
部分<span class="pull-right category">
的部分{strong>我该怎么办?
现在,如果我在下拉列表中选择Fisrt
选项,则会向我显示第一个和第三个面板,因为在第三个panel-body
内容中存在单词First,所以我只想指向内容来自我的span元素的类category
,并将First
作为类别的面板显示在面板的任何其他部分中。
编辑:基本上我需要通过选择类别来过滤掉下拉列表,并且只显示我选择的类别的面板,无论面板的其他内容是什么,只需Category
一部分。
答案 0 :(得分:2)
在您的过滤器中,仅在具有类类别的范围内查找该术语,而不是整个面板文本。
变化:
$(this).text().toLowerCase().indexOf(term.toLowerCase()) > -1
到
$(this).find('span.category').text().toLowerCase().indexOf(term.toLowerCase()) > -1
答案 1 :(得分:1)
试试这个:
$(this).find(".category").text().toLowerCase().indexOf(term.toLowerCase()) > -1