2017-03-20 11 views
2

ng-repeatを使用してデータを入力するテーブルがあります。例のために、私がevite-type模擬サイトを作成していて、テーブルが応答したすべての人を表示しているとしましょう。各行にラジオボタンがあり、これを選択すると、表の下のdivに追加情報が入力されます。このdivは、既存の返信を返信して更新するためのテンプレートとしても使用されます。上記の表から行を選択すると、このdivのフィールドに値が設定されます。フィールドの1つは、ng-optionsを使用して入力される選択ドロップダウンボックスです。これらのオプションは、 "YES"、 "NO"、 "MAYBE"を表示しますが、応答をサービスに返すときには、それぞれコード番号 "1"、 "2"、または "3"が必要です。私のオプションは次のようになります。ng-modelを通じてng-optionを選択する方法

ng-options="decision.decisionCode as decision.decisionDescription for decision in vm.decisionList" 

テーブルから行を選択すると、私はこのオプションを表示できません。 selectのng-modelをdecisionCode、decisionDescriptionおよびオブジェクトに設定しようとしましたが、ドロップダウンは空のままです。選択した値をテーブルから表示するには、どのようにngモデルを割り当てることができますか?

<div class="col-md-2 "> 
    <select class="form-control" id="decision" ng-model="vm.decisionSelected" ng-options="decision.decisionCode as decision.decisionDescription for decision in vm.decisionList"></select> 
</div> 

vm.decisionList:

[{ 
"decisionCode": "1", 
"decisionDescription": "YES" 
}, { 
"decisionCode": "2", 
"decisionDescription": "NO" 
}, { 
"decisionCode": "3", 
"decisionDescription": "MAYBE" 
}] 
+0

'ng-model'を使って' select 'html(' ng-model'を含む)を含め、 'vm.decisionList'の様子を表示してください。 – devqon

+0

要求された情報で更新しました –

+0

あなたの' decisionSelected'のように見える? – devqon

答えて

1

私はあなたのコードを試してみましたが、それは私のために正常に動作します。調べる必要があるのは、コントローラのセットアップ方法です。これに代えて、あなたがそのようvm.decisionListに$スコープ変数を作成する場合

angular.module('app') 
    .controller('myController', myController); 

function myController() { 
    var vm = this;    // This is necessary for Controller As syntax to work 
    vm.decisionSelected = "1"; // Assuming you want a default value 
    vm.decisionList = [ 
     { 
      "decisionCode": "1", 
      "decisionDescription": "YES" 
     }, 
     { 
      "decisionCode": "2", 
      "decisionDescription": "NO" 
     }, 
     { 
      "decisionCode": "3", 
      "decisionDescription": "MAYBE" 
     }]; 
} 

を:あなたのコントローラは、このような最低限の外観にする必要がありますので、私は、あなたがあなたのスニペットを考慮し、構文としてコントローラを使用していると仮定していますそれは$ scope.decisionListなので、Controller As構文では認識されませんので、 "vm"を削除する必要があります。あなたのng-optionsの中で

+0

これはコントローラがどのように見えるのかと非常に似ています。私のモデルを表示するために式を使うと、値がドロップダウンリストからの正しい応答に関連付けられていないという問題があります。たとえば、応答が「YES」のテーブルから行を選択すると、モデルには「1しかし、ng-optionsを含むドロップダウンリストには正しい応答が設定されません。 –

関連する問題