【发布时间】:2016-02-10 13:16:02
【问题描述】:
我有一个json文件
var myJson = {
"Number of Devices":2,
"Block Devices":{
"bdev0":{
"Backend_Device_Path":"/dev/ram1",
"Capacity":"16777216",
"Bytes_Written":9848,
"timestamp":"4365093970",
"IO_Operations":87204,
"Guest_Device_Name":"vdb",
"Bytes_Read":107619,
"Guest_IP_Address":"192.168.26.88"
},
"bdev1":{
"Backend_Device_Path":"/dev/ram2",
"Capacity":"16777216",
"Bytes_Written":10062,
"timestamp":"9365093970",
"IO_Operations":93789,
"Guest_Device_Name":"vdb",
"Bytes_Read":116524,
"Guest_IP_Address":"192.168.26.100"
}
}
}
我想在下拉菜单中推送块设备的名称。在查看了一些示例后,名称是 bdev0 和 bdev1 我尝试了以下代码,但我只是在下拉列表中返回 [Object object]
查看
<select ng-model="selectedDevice" ng-options="item as devices['Block Devices'] for item in selectdevice">
<option value="">Select Device</option>
</select>
和控制器
.controller('timeSeriesCtrl', function($scope, $timeout, $http) {
$scope.selectedDevice = null;
$scope.selectdevice = [];
$scope.bytesRead = [];
$scope.bytesWritten = [];
$scope.IoOps = [];
$scope.currentTime = [];
var path = 'http://orbit5.ds.cs.umu.se:8888/vrio/debug/blk'
function getData(){
$http.get(path)
.success(function(data){
$scope.devices = data
angular.forEach($scope.devices['Block Devices'], function(value, key){
$scope.selectdevice = key;
})
})
}
getData();
});
【问题讨论】:
-
你想要
ng-options="item.displayName as item for item in devices['Block Devices']" -
它仍然只是返回 [Object object]
-
注意:请使用服务来发出 HTTP 请求.
标签: javascript jquery angularjs json