Специально же разработали для select
ng-options, там как раз нормальный пример есть.
Копипаст из одного действующего проекта (заранее извиняюсь за некрасивый код, одно из первых внедрений angularjs):
<tr ng-repeat="extraPoint in order.pickpoint" ng-show="form.address.city.name==extraPoint[0].name" class="delivery-section-extra">
<td class="delivery-checkbox pickup-checkbox">
<input ng-click="setPickup(extraPoint[0])"
ng-checked="form.delivery.name==extraPoint[0].name"
type="radio"
ng-required="!giftOnly" />
</td>
<td ng-init="point=extraPoint[0]">
<span ng-click="setPickup(point)">{{extraPoint[0].name}} - бесплатный самовывоз</span>
<select
ng-click="setPickup(point)"
ng-model="point"
ng-options="pickupPoint.desc for pickupPoint in extraPoint">
</select>
</td>
</tr>
Вкратце, есть список городов и у каждого из них есть select с точками самовывоза.
Данные попадают в модель по клику на radio кнопку/по клику по названию/по клику на select