我正在使用一个名为quicksearch的jquery插件来过滤评论列表。
以下是标记中的一个片段:
<ol class="commentlist">
<li class="comment byuser comment-author-admin bypostauthor even thread-even depth-1" id="li-comment-9">
<article id="comment-9" class="comment">
<div class="comment-content">
<p><span class="ecf-field ecf-field-1">
<strong class="ecf-question">I CHOOSE :</strong><span class="ecf-answer">HTML5</span>
</span></p>
<p>I agree with HTML 5</p>
</div>
</article><!-- #comment-## -->
</li><!-- #comment-## -->
我想要的是按此<span class="ecf-answer">HTML5</span>
进行搜索,因此,如果搜索查询匹配HTML5
以显示与搜索查询对应的<li>
项。
问题是,如果我搜索HTML5
搜索整个<li>
项目,而不仅仅是通过<span class="ecf-answer">HTML5</span>
我的问题是我怎样才能搜索这个<span class="ecf-answer">HTML5</span>
,但仍然删除所有不对应的<li>
项目?
这是一个小提琴,可以更好地理解我在说什么。
这可能吗?
在您通过 JSFiddle 提供的代码中,我看到缓存变量(负责在查询上进行比较的变量)正在作为整个内部结构传递<li>
。
通过编辑行#134:
return e.strip_html(this.innerHTML);
自
return e.strip_html($(this).find(".ecf-answer").html());
。然后,您告诉应用程序仅比较每个项目的 .efc 答案部分。
这是工作小提琴 http://jsfiddle.net/2QAdv/1/
但是,还有另一种解决方案是向快速搜索构造函数提供selector
值,如下所示:
$("#id_search").quicksearch("ol li article ", {
noResults: '#noresults',
loader: 'span.loading',
selector: '.ecf-answer'
});
http://jsfiddle.net/2QAdv/2/
我希望这就是你要找的。
干杯:)