我想按第一个ng-repeat
的动态值过滤第二个ng-repeat
。我的代码是:
<div ng-repeat="all in all | unique: 'Category'">
<p>{{all.Category}}<p>
<div class="list" ng-repeat="tabs in tabs | filterBy: ['Category']: '{{all.Category}}'">
我尝试了上面的代码,但第二个filterBy
中的ng-repeat
无效。你有什么建议吗?感谢。
答案 0 :(得分:2)
我真的不明白你的第二个过滤器的参数是什么,但如果我没有错,你应该尝试这样的事情:
<div ng-repeat="all in all | unique: 'Category'">
<p>{{all.Category}}<p>
<div class="list" ng-repeat="tabs in tabs | filter: all.category">
好吧,如果我错了,请告诉我原因,如果可以,我会编辑我的答案,如果我不知道如何解决您的问题,请删除。 如果all.category是一个字符串(并且我认为它是一个字符串,因为我不知道你的对象里面是什么),这应该有效。
(编辑:犯了错误......是的,你需要在第一个中进行第二次重复重复。)
答案 1 :(得分:0)
你必须在div里面添加div ..对于嵌套的ng-repeat .. 请参见 DEMO 此处
<强> HTML 强>
<div ng-app ng-controller="myCtrl">
<input type="text" ng-model="textSearch" placeholder='name Search'>
<div ng-repeat="all in userList | filter:textSearch" class="parent">
{{all.name}}
<div ng-repeat="child in all.child" class="child">
{{child.value}}
</div>
</div>
</div>
<强>控制器强>
function myCtrl($scope) {
$scope.userList=[{
'name':'Anil',
'address':'Mumbai',
'id':1,
'child':[{
"id": "0",
"unit": "10",
"value": "21000",
"others":"N"
},{
"id": "0",
"unit": "10",
"value": "12000",
"others":"N"
},{
"id": "0",
"unit": "10",
"value": "22000",
"others":"N"
}]
},{
'name':'Sunil',
'address':'Delhi',
'id':1,
'child':[{
"id": "0",
"unit": "10",
"value": "21000",
"others":"N"
},{
"id": "0",
"unit": "10",
"value": "12000",
"others":"N"
},{
"id": "0",
"unit": "10",
"value": "22000",
"others":"N"
}]
},{
'name':'Manil',
'address':'Varansasi',
'id':1,
'child':[{
"id": "0",
"unit": "10",
"value": "21000",
"others":"N"
},{
"id": "0",
"unit": "10",
"value": "12000",
"others":"N"
},{
"id": "0",
"unit": "10",
"value": "22000",
"others":"N"
}]
}]
}