2017-05-10 6 views
2

キー値のペアng-repeatを使用してオブジェクトのリストを反復処理します。動的なng-modelをチェックボックスに追加します。 私はたくさんの検索をしましたが、解決策が見つかりませんでした。同様の質問 - define dynamic ng-model inside key value pair ng-repeatが見つかりましたが、回答が得られていないようです。(key、value)の内部で動的プロパティを追加する方法ng-repeat

<div id="details_{{key}}" ng-repeat="(key,value) in value" > 
<input type="checkbox" ng-model="" ng-change="single_chk()"> 
</div> 

私は上記NGリピートのためにNG-モデルに対するダイナミックプロパティを追加し、私はあまりにもNG-変更内側にその値を渡すことができますどのように?

+0

[動的NG-モデルを割り当てる]の可能複製(http://stackoverflow.com/questions/ 14183614/dynamic-assign-ng-model) –

答えて

1

キーまたは$インデックスを使用してモデルを「オンザフライ」で作成できますが、それをオブジェクト表記として使用すると、コントローラで簡単にアクセスできます。あなたのng-repeatは、以下のように(key、value)の問題を引き起こす可能性があるので、 'value'以外の名前を持つべきです。私はまた、VMの使用に慣れるお勧めします:

<div id="details_{{key}}" ng-repeat="(key, value) in vm.objArray"> 
    <input type="checkbox" ng-model="vm.model.{{key}}" ng-change="vm.single_chk(key)"> 
</div> 

次に、あなたのコントローラで、this.modelは関係なく、キーが何であるかの、あなたはその下のすべてのモデルを持つオブジェクトを与えるアクセスします。 、あなたはモデル自体に使用しているキーでそう簡単にアクセス渡さあなたNG-変更、:

single_chk(key) { 
    // this.model[key] holds the model for the key passed in 
} 
+0

これは私の助けになりました。 –

関連する問題