2016-05-08 29 views
0

Gibt es in Angulars ngRepeat einen netten Weg, einen Wert aus einem JSON-Array abhängig von seinem Schlüssel zu ziehen. Ich arbeite mit der folgenden JSON-Struktur und möchte für jedes Objekt den zugehörigen Wert von "Name 2" ausgeben.Pull-Wert aus dem JSON-Schlüsselwertpaar mit AngularJS

{ 
    "Items": [ 
    { 
     ... 
     "Attributes": [ 
     { 
      "Name": "Name 1", 
      "Value": "123" 
     }, 
     { 
      "Name": "Name 2", 
      "Value": "456" 
     }, 
     { 
      "Name": "Name 3", 
      "Value": "789" 
     } 
     ] 
    }, 
    { 
     ... 
     "Attributes": [ 
     { 
      "Name": "Name 1", 
      "Value": "987" 
     }, 
     { 
      "Name": "Name 2", 
      "Value": "654" 
     }, 
     { 
      "Name": "Name 3", 
      "Value": "321" 
     } 
     ] 
    }, 
    { 
     ... 
     "Attributes": [ 
     { 
      "Name": "Name 1", 
      "Value": "246" 
     }, 
     { 
      "Name": "Name 2", 
      "Value": "369" 
     }, 
     { 
      "Name": "Name 3", 
      "Value": "135" 
     } 
     ] 
    } 
    ] 
} 

Antwort

0

versuchen, wie diese

angular.forEach(data.Items,function(value,key){ 
    angular.forEach(value,function(v){ 
     if(v.name == "Name 2") 
     console.log(v); 
    } 
    }) 
0

Hier ist ein Beispiel. Es wird die Wert für "Name 2" drucken:

<body ng-app="myApp"> 

    <div ng-controller="myCtrl"> 
    <div ng-repeat="item in records.Items"> 
     <div ng-repeat="singleAttribute in item.Attributes"> 
     <div ng-if="singleAttribute.Name === 'Name 2'"> 
      {{singleAttribute.Value}} 
     </div> 
     </div> 
    </div> 
    </div> 

<script> 
    var app = angular.module("myApp", []); 
    app.controller("myCtrl", function($scope) { 
    $scope.records = { 
     "Items": [ 
     { 
      "Attributes": [ 
      { 
       "Name": "Name 1", 
       "Value": "123" 
      }, 
      { 
      "Name": "Name 2", 
      "Value": "456" 
      }, 
      { 
      "Name": "Name 3", 
      "Value": "789" 
      } 
     ] 
     }, 
     { 
     "Attributes": [ 
      { 
      "Name": "Name 1", 
      "Value": "987" 
      }, 
      { 
      "Name": "Name 2", 
      "Value": "654" 
      }, 
      { 
      "Name": "Name 3", 
      "Value": "321" 
      } 
     ] 
     }, 
     { 

     "Attributes": [ 
      { 
      "Name": "Name 1", 
      "Value": "246" 
      }, 
      { 
      "Name": "Name 2", 
      "Value": "369" 
      }, 
      { 
      "Name": "Name 3", 
      "Value": "135" 
      } 
     ] 
     } 
    ] 
    }; 
}); 
</script> 

</body> 
Verwandte Themen