2016-07-05 7 views
1

jsonオブジェクトからコンボボックスにデータを表示したいとします。コンボボックスanglejsにデータ配列を表示

<select ng-model="vm.datasource.currencyFormatChoice" ng-options="currencyFormatChoice as currencyFormatChoice for currencyFormatChoice in vm.datasource.currencyFormat"></select> 

これは私が持っているjsonオブジェクトです。今度は、displayValueをコンボボックスに設定したいと思います。

"currencyFormat": [ { "displayValue": "€ 1.000,00", "value": "{0:C2}" }, { "displayValue": "€ 1.000", "value": "{0:C0}" }, { "displayValue": "$ 1,000.00", "value": "{0:C2}" }, { "displayValue": "$ 1,000", "value": "{0:C0}" }, { "displayValue": "1.000,00", "value": "{0:N2}" }, { "displayValue": "1.000", "value": "{0:N0}" }, { "displayValue": "1,000.00", "value": "{0:N2}" }, { "displayValue": "1,000", "value": "{0:N0}" } ] 

HTMLのコードでは、$ 1000ではなく[object Object]を取得します。 displayValueをどのようにしてコンボボックスに入れることができますか?

種類を使用すると、以下のフィドルを見てみましょうするために、私はそれを修正

答えて

0

これはトリックをしました!

ng-options="currencyFormat as currencyFormat.displayValue for currencyFormat in vm.datasource.currencyFormat" 
0

について。

<div ng-app="myapp"> 
     <fieldset ng-controller="FirstCtrl"> 
     <select ng-model="modelValue" ng-options="currencyFormatChoice.displayValue for currencyFormatChoice in vm.datasource.currencyFormatChoice"></select> 

     </fieldset> 
    </div> 

var myapp = angular.module('myapp', []); 
myapp.controller('FirstCtrl', function($scope) { 
$scope.modelValue = {}; 
     $scope.vm = { 
     datasource: { 
      currencyFormatChoice: [{ 
      displayValue: "€ 1.000,00", 
      value: "{0:C2}" 
      }, { 
      displayValue: "€ 1.000", 
      value: "{0:C0}" 
      }, { 
      displayValue: "$ 1,000.00", 
      value: "{0:C2}" 
      }, { 
      displayValue: "$ 1,000", 
      value: "{0:C0}" 
      }] 
     }}; 
     }); 

solution

+0

ありがとうございました!私はあなたのソリューションを挿入した後でも私のコンボボックスに[オブジェクトオブジェクト]を取得します。 – Fearcoder

+0

@Fearhunter私の回答を更新しました –

+0

あなたの方が良いです!ありがとうございます – Fearcoder

関連する問題