FilterBy中两个Ng-repeat Angularjs中的动态值

时间:2016-10-14 09:16:36

标签: javascript angularjs angular-filters

我想按第一个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无效。你有什么建议吗?感谢。

2 个答案:

答案 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"
        }]
    }]
}