【发布时间】:2015-03-18 14:37:06
【问题描述】:
我有几个从 JSON 数据和ng-repeat 生成的小部件。此小部件内部是一个选择下拉菜单。
我可以使用ng-change 在我的Controller 中调用一个函数,但是在该选择上使用ng-model,会更改所有小部件中所有选择下拉列表的选择值。
如何防止这种情况发生?
<div ng-repeat="item in widget.items" class="well col-md-6 col-lg-4">
<select ng-model="widget.chosenValue"
ng-change="widget.updateTag(item.item_id, widget.chosenValue)">
<option value="companies"
ng-selected="{{item.tag == 'companies'}}"
changed="companies">companies</option>
<option value="news"
ng-selected="{{item.tag == 'news'}}"
changed="news">news</option>
<option value="people"
ng-selected="{{item.tag == 'people'}}"
changed="people">people</option>
<option value="products"
ng-selected="{{item.tag == 'products'}}"
changed="products">products</option>
</select>
</div>
选择的型号:ng-model="widget.chosenValue"
^ 因此,在 select 中选择一个选项会将正确的值发送到我的 widget.updateTag 函数中,但它也会更改每个其他小部件中的值。
有没有办法将模型范围隔离到每个小部件?
【问题讨论】:
标签: angularjs angularjs-ng-repeat ng-repeat angular-ngmodel angularjs-ng-model