关于关键字搜索之后,关键字标红的写法
做项目的时候,有一个搜索,输入关键字,然后搜出来的结果,关键字标红。类似下图
可以通过正则的方法实现。
//判断搜索记录是否包含某个关键字
checkPara(val,para){
if (val.indexOf(para) !== -1 && para !== ''){
return true;
}else {
return false
}
},
showData(val) {
val = val + '';
if (this.checkPara(val,this.keywords)) {
//如果搜索结果记录包含关键字中的任何一个,那么修改样式
return val.replace(this.keywords , "<span color='red'>" + this.keywords + '</span>')
} else {
return val //不做任何修改
}
},
然后在搜索结果中调用 showData 方法,
<span class="name" id="wordsName" v-html="showData(searchResult)"></span>
小灰灰~~: 报错了
新生代农民工yy: 确实是打错了,多谢提醒
南方者: getFullYear(),不是getGullYear(),这里应该是你打错字母啦
shenmanong: 他这个匹配的是一段文字里的第一个啊,什么方法可以匹配全部的,然后全部关键字加红