我在angularJS中使用了ng-repeat和filter,例如电话教程,但我想在页面中突出显示搜索结果。使用基本的jQuery,我只需在输入的键上解析页面,但是我试图以 Angular 方式进行操作。有任何想法吗 ?
我的代码:
<input id="search" type="text" placeholder="Recherche DCI" ng-model="search_query" autofocus>
<tr ng-repeat="dci in dcis | filter:search_query">
<td class='marque'>{{dci.marque}} ®</td>
<td class="dci">{{dci.dci}}</td>
</tr>
最佳答案
对于AngularJS v1.2 +
HTML:
<span ng-bind-html="highlight(textToSearchThrough, searchText)"></span>
JS:
$scope.highlight = function(text, search) {
if (!search) {
return $sce.trustAsHtml(text);
}
return $sce.trustAsHtml(text.replace(new RegExp(search, 'gi'), '<span class="highlightedText">$&</span>'));
};
CSS:
.highlightedText {
background: yellow;
}
关于angularjs - 在AngularJS中突出显示过滤结果,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15519713/