请参阅以下图片:
很好。
现在,请看下面的图片:
这对我不好。
我需要在声明后首先突出显示:
陈述:as
然后是以下声明:
陈述:dad
他们都突出了。怎么做?
js code:
tableService.highlight = function (text, search) {
if (!search) {
return $sce.trustAsHtml(text);
}
var trustAsHtml = $sce.trustAsHtml(text.replace(new RegExp(search, 'gi'), '<span class="highlightedText">$&</span>'));
return trustAsHtml;
};
cshtml代码:
<td ng-hide="$index == tableService.choiseDeleteRecord ||$index==tableService.choiseUpdateRecord">
<span ng-bind-html="tableService.highlight(newsCategory.NameFa, pagerService.search)"> {{newsCategory.NameFa}}</span>
</td>
<td class="direction-left" ng-hide="$index == tableService.choiseDeleteRecord ||$index==tableService.choiseUpdateRecord">
<span ng-bind-html="tableService.highlight(newsCategory.NameFa, pagerService.search)"> {{newsCategory.NameEn}}</span>
</td>
答案 0 :(得分:0)
我尝试过,但我成功了。但我的代码可能不是最佳的。
如果你有更好的方法,请分享
js code:
tableService.highlight = function (text, search) {
if (!search) {
return $sce.trustAsHtml(text);
}
var splitSearch = search.split(' ');
$.each(splitSearch, function (index, value) {
text = replaceAll(value, '#####$&~~~~~', text);
});
text = replaceAll('#####', '<span class="highlightedText">', text);
text = replaceAll('~~~~~', '</span>', text);
var trustAsHtml = $sce.trustAsHtml(text);
return trustAsHtml;
};