繁体   English   中英

ng-options与一个对象

[英]ng-options with one object

我有一个回调,它可以是具有多个对象的数组,也可以只是一个对象:

   $http.get($rootScope.appUrl + '/nao/abb/getStationData/' + selectedSupercustomer.superkund_id).success(function(data) {
        $scope.stationOptions = data;
        if($scope.stationOptions instanceof Array)
        {
            //Array of objects
            angular.forEach($scope.stationOptions, function(option) {
                console.log(option);
                if(option.nao_adsl_stationer_id === $scope.abbData.nao_adsl_stationer_id) {
                    $scope.selectedStation = option;
                }
            })
        }
        else
        {
            //Only one object
            if($scope.stationOptions.nao_adsl_stationer_id === $scope.abbData.nao_adsl_stationer_id) {
                $scope.selectedStation = $scope.stationOptions;
            }
        }
    });

如果它是一个包含多个对象的数组,则使用ng-options将它们循环出没问题,但是当回调是一个对象时,如下所示:

{"nao_adsl_stationer_id":"33","namn":"Malm\u00f6 - Arl\u00f6v","stationskod":"ARV","ipserie_id":"","net":"","mask":"","ip":""}

没用

我使用ng-options这样的:

 <td><select class="form-control input-sm2" ng-disabled="!selectedSupercustomer" ng-model="selectedStation" ng-options="item as item.namn for item in stationOptions" ng-change="onChangeStation(selectedStation)"><option value=''>Välj station</option></select></td>

您可以返回一个仅包含一个对象的数组(这样就可以摆脱代码的else部分),也可以像这样在else部分中构造此数组

$scope.selectedOptions = [data];
$scope.selectedStation = $scope.stationOptions[0];

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM