在选择的angularjs中绑定两个ng模型

时间:2013-09-26 10:57:42

标签: angularjs

他们是否可以在select标签中绑定两个ng-model?为了进一步解释这一点,我将分享我的一些代码

我有这个动态输入按钮,如果用户希望添加新选项。注意我使用了两个属性opt.id& opt.text

<div ng-repeat="opt in q.options">
   <label><span>{{opt.id}}.</span></label>
   <input type="text" ng-model="opt.text" placeholder="Add new possible answer here.">
   <a ng-click="q.options.splice($index,1)"><i class="icon-remove-sign icon-large"></i> </a>
</div>

然后我重新使用q.options在select标签中显示id。

<div ng-repeat="answer in q.answer">
 <div>
    <select ng-model="answer.id" ng-options="c.id as c.id for c in q.options"></select>
    <a ng-click="q.answer.splice($index,1)"><i class="icon-remove-sign icon-large"></i></a>
 </div>
</div>

有了这个我能够重新创建选项id并将值ng-model =“answer.id”设置为我的控制器,但我还需要opt.text将它设置为answer.text也可以从我的控制器获取控制器然后将它传递给我的api电话。我不想为它创建另一个选择标记。

添加了一个jsfiddle:http://jsfiddle.net/si_dean_ako/3UFAf/1/

1 个答案:

答案 0 :(得分:1)

<select ng-model="select[$index]" ng-options="c.id for c in q.options" 
ng-change="change(answer,select[$index])"></select>

控制器:

$scope.select = {};

$scope.change = function(o,v){      
    o.id = v.id;
    o.text = v.text;
}