1

私は次のようにオブジェクトの配列を持っている:ソースリストがオブジェクトの配列である場合、ng-modelに選択した値を格納する方法は?

vm.items = [{id: "1", val: "a"},{id: "2", val: "b"},{id: "3", val: "c"}] 

そして、私のようなオプションを選択し、それをバインド:

<select ng-model="vm.model.id" > 
    <option value="">select somthing</option> 
    <option ng-repeat="i in vm.items" value="{{i.id}}">{{i.val}}</option> 
</select> 

をしかし、私はドロップダウンリストから、いくつかの項目を選択したときに、私はオブジェクト全体{}を取得し、私はIDのみをしたいです。 どうすればいいですか?

+0

に設定されていることを示していますオブジェクト全体をドロップダウンアイテムとして使用するか、選択に変更を記録するときにオブジェクト全体を表示していますか? – Und3rTow

答えて

2

あなたが直接selectタグにNG-オプションを使用することができます。あなたのJSONは、idと名前の変数が含まれている場合は、このように指定することができます

<select ng-model="vm.model.id" ng-options="i.id as i.name for i in vm.items"> 
    <option value="">select somthing</option> 
</select> 

i.idはオプション値に設定され、i.nameがテキスト

1

ng-modelng-optionsselectに入力してください。

インサイドcontroller.js

$scope.selectedItem = ""; 

マークアップ

<select ng-model="selectedItem " name="state" 
     ng-options="item.id as item.value for item in vm.items"> 
    <option value="">select somthing</option> 
</select> 
関連する問題