2016-05-11 4 views
0

Я пытаюсь получить имя объекта json (bdev0 и bdev1 в этом случае) из моего набора данных.Как получить имя объекта json с угловым

До сих пор я пробовал ng-опции без успеха. То, что я пытаюсь достичь в следующем коде, - это просто получить имя json-объекта. Пока все примеры, которые я пробовал, не помогли мне.

jsfiddle

Код:

var myApp = angular.module('myApp', []); 

//myApp.directive('myDirective', function() {}); 
//myApp.factory('myService', function() {}); 

function MyCtrl($scope) { 
    $scope.data = [{ 
     "Block_Devices": { 
      "bdev0": { 
       "Backend_Device_Path": "/dev/ram1", 
       "Capacity": "16777216", 
       "Bytes_Written": 1577, 
       "timestamp": "4365093970", 
       "IO_Operations": 17757, 
       "Guest_Device_Name": "vdb", 
       "Bytes_Read": 17793, 
       "Guest_IP_Address": "192.168.26.88" 
      }, 
      "bdev1": { 
       "Backend_Device_Path": "/dev/ram2", 
       "Capacity": "16777216", 
       "Bytes_Written": 1975, 
       "timestamp": "9365093970", 
       "IO_Operations": 21380, 
       "Guest_Device_Name": "vdb", 
       "Bytes_Read": 20424, 
       "Guest_IP_Address": "192.168.26.100" 
      } 
     }, 
     "Number of Devices": 2 
    }] 

} 

HTML

<div ng-controller="MyCtrl"> 
    <select name="Block_Devices" ng-model="selectedDevice" ng-options="value.Block_Devices for value in data"> 
    <option value="">Please Select Device</option> 
    </select> 
</div> 
Selected Device = {{selectedDevice}} 

ответ

1

Вы можете использовать синтаксис ng-repeat="(key, value) in array".

<div ng-repeat="(key, value) in data[0].Block_Devices"> 
{{key}} 
</div> 

{{ключ}} будет собственностью Block_Devices
См образец jsfiddle

+0

нг-опций =» ключ (ключ, значение) в данных [0] .Block_Devices "будет работать в режиме выбора – Nils

1

Как указано Bon передо мной вы можете сделать как в этом jsfiddle

<select name="Block_Devices" ng-model="selectedDevice.Bytes_Written" ng-options="key for (key, value) in data[0].Block_Devices"> 
    <option value="">Please Select Device</option> 
    </select> 
Смежные вопросы