2016-04-08 13 views
1

HTML私は応答として、キャンペーンオブジェクトを取得し、そのていた場合には

<select class="form-control" 
      ng-model="campaign.CampaignTypeId" 
      ng-options="CampType.id as CampType.name for 
     CampType in CampaignTypeIds track by CampType.id" > 
     <option value="">Select campaign type</option> 
    </select> 

はJavaScript

$scope.CampaignTypeIds = [{ id: "1", name: "Location" }, { id: "2", name: "Brand" }]; 

$scope.getSingleCampaignResponse = function (response) {//http get method gets the resposne 
    $scope.campaign= response 
} 

イベントで選択したオプションのためのモデルをngのために値をバインドすることができません。オブジェクトはCampaignTypeId:1ですが、私はクラウドにバインドできませんCampaignTypeId選択オプションのng-model

+0

$ scope.campaign.CampaignTypeIdを手動で設定するとどうなりますか?私が知る限り、角度は、親オブジェクトではなく、モデル自体の値で時計を設定するだけです。 – ryanlutgen

答えて

1

このトリックは、このように置く必要があるng-optionsです。ng-options="CampType as CampType.name for CampType in CampaignTypeIds track by CampType.id"。このplunkerで動作していることがわかります。また、NGモデルをオブジェクトにバインドすることもできます(ng-model="campaign"など)。

マークアップ:タイムアウトは2秒後にリクエストをシミュレートしている

angular.module('myApp', []) 
.controller('myCtrl', ['$scope', '$timeout', function($scope, $timeout) { 
    $scope.CampaignTypeIds = [{ 
     id: "1", 
     name: "Location" 
    }, { 
     id: "2", 
     name: "Brand" 
    }]; 

    $scope.getSingleCampaignResponse = function(response) { 
     $scope.campaign = response; 
    } 

    //simulating request 
    $timeout(function() { 
     $scope.getSingleCampaignResponse({ id: "2" }); 
     // or if you want like this 
     // $scope.getSingleCampaignResponse({ id: "2" , name : "brand"}); 
    }, 2000) 
}]); 

注:

<body ng-app="myApp" ng-controller="myCtrl"> 
    <select class="form-control" 
      ng-model="campaign" 
      ng-options="CampType as CampType.name for 
      CampType in CampaignTypeIds track by CampType.id" > 
     <option value="">Select campaign type</option> 
    </select> 
</body> 

とコントローラ上の

+0

[lhere](https://plnkr.co/edit/sMCmbHrXdbLhbjGs7Dkt?p=preview)ここにあり動作します。 –

+0

https://plnkr.co/edit/aFqa4p?p=preview – Sri

+0

マークアップのng-modelは 'ng-model =" campaign.id "ではなく、' ng-model = "campaign.id"ではなく ' –

関連する問題