【发布时间】:2017-11-02 10:06:40
【问题描述】:
我有一个这样的 div 设置:
<input id="search">
<div class="entry">
<div class="title">hello world test 123</div>
<div class="description">lorem ipsum test test1 testing</div>
</div>
<div class="entry">
<div class="title">attack on titan</div>
<div class="description">fullmetal alchemist</div>
</div>
我允许用户使用以下命令搜索 div:
jQuery(document).ready(function() {
jQuery("#search").on("keyup click input", function () {
var val = jQuery(this).val();
if (val.length) {
jQuery(".entry").hide().filter(function () {
return jQuery('.title, .description',this).text().toLowerCase().indexOf(val.toLowerCase()) != -1;
}).show();
}
else {
jQuery(".entry").show();
}
});
});
效果很好,试试jsFiddle。
我的问题是,如何突出显示搜索词?比如用户搜索test,我想把文字test换成<span>标签。
编辑:请注意,我知道如何搜索/替换文本,但我似乎无法使用我的搜索功能使其正常工作。
【问题讨论】:
-
我会说这个有点不同,当使用这样的搜索时。
-
这个问题符合条件的时候我会奖励50分。
标签: javascript jquery