I have several widgets which are generated from JSON data and an
ng-repeat
Controller
ng-change
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"
widget.updateTag
If you want to know what they selected you should replace
ng-model="widget.chosenValue"
ng-change="widget.updateTag(item.item_id, widget.chosenValue)
with
ng-model="item.chosenValue"
ng-change="widget.updateTag(item)
This applies the chosenValue to each item in the list, so it would look like
<div ng-repeat="item in widget.items" class="well col-md-6 col-lg-4">
<select ng-model="item.chosenValue"
ng-change="widget.updateTag(item)">
Then in your updateTag function you can access