Javascript 按Angular.js中的两个字段过滤
我有一个代码,可以过滤字段并标记与输入搜索相关的单词。我需要它不仅通过标题,而且通过名字来过滤我。如何修改代码,以便在编写时过滤标题和名称Javascript 按Angular.js中的两个字段过滤,javascript,angularjs,Javascript,Angularjs,我有一个代码,可以过滤字段并标记与输入搜索相关的单词。我需要它不仅通过标题,而且通过名字来过滤我。如何修改代码,以便在编写时过滤标题和名称 <li ng-repeat="item in data | filter:search.title" ng-bind-html="item.title | highlight:search.title"> </li> 您可以通过在对象中收集两个或多个选项来发送它们以进行筛选: <li ng-repeat="item
<li ng-repeat="item in data | filter:search.title"
ng-bind-html="item.title | highlight:search.title">
</li>
您可以通过在对象中收集两个或多个选项来发送它们以进行筛选:
<li ng-repeat="item in data | filter:{title:search.title,name:search.name}"
ng-bind-html="item.title | highlight:search.title">
</li>
建议在控制器中使用过滤器,以避免其上的$digest循环
<div ng-app="myApp" ng-controller="myCtrl">
<input type="text" placeholder="Search" ng-model="search.title">
<ul>
<!-- with filter -->
<li ng-repeat="item in data | filter:{title:search.title,name:search.name}"
ng-bind-html="item.title | highlight:search.title">
{{item}}
</li>
</ul>
</div>
-
{{item}}
脚本代码如下:
var app = angular.module("myApp", []);
app.controller("myCtrl", function($scope) {
$scope.data = [
{ title: "Bad",name:'bill' },
{ title: "Good",name:'Goe' },
{ title: "Great",name:'Brad' },
{ title: "Cool",name:'yan' },
{ title: "Excellent",name:'mikle' },
{ title: "Awesome",name:'mosa' },
{ title: "Horrible",name:'morteza' },
]
}).filter('highlight', function($sce) {
return function(text, phrase) {
if (phrase) text = text.replace(new RegExp('('+phrase+')', 'gi'),
'<span class="highlighted">$1</span>')
return $sce.trustAsHtml(text)
}
})
var-app=angular.module(“myApp”,[]);
app.controller(“myCtrl”,函数($scope){
$scope.data=[
{标题:“坏”,名字:“比尔”},
{标题:“好”,名字:'Goe'},
{标题:“伟大”,名字:'Brad'},
{标题:“酷”,名字:'yan'},
{标题:“优秀”,名称:'mikle'},
{标题:“棒极了”,名字:'mosa'},
{标题:“恐怖”,名字:'morteza'},
]
}).filter('highlight',函数($sce){
返回函数(文本、短语){
如果(短语)text=text.replace(新的RegExp(“(“+短语+”)”,“gi”),
'$1')
返回$sce.trustAsHtml(文本)
}
})
我在你的代码中的任何地方都找不到name
我仍然找不到name
。@marainesparnisari看我如何在同一行上显示这两个元素?你可以像这样绑定{{{item.title-item.name}我修改链接。我的问题还在继续。这将是完美的,但我也需要过滤器来处理名称。