Хорошо, поэтому я заполняю выпадающее меню со значениями из сервиса:
<select ng-model="things.thing" id="thing" name="thing"
ng-options="thing.id as thing.description for thing in things" >
<option value="" selected>Select a thing</option>
</select>
С json:
[
{"id": 1, "description": "this is an option"},
{"id": 2, "description": "second option right here"},
{"id": 3, "description": "there are three even"},
etc
]
Это обеспечивает следующее:
Но моя цель состоит в том, чтобы иметь дополнительную опцию "неизвестная вещь", которая после выбора активирует другое поле ввода с помощью ng-show, где пользователь может указать свою собственную вещь. Но когда я добавляю дополнительный <option>
это игнорируется в результатах?
<option value="0">Add new thing</option>
Это результат:
Никакой дополнительной опции. Могу ли я это сделать? Как мне заставить это работать?
Вы можете попробовать повторить параметры вместо использования ng-repeat в select
<select ng-model="selectedThing" >
<option value="Select a thing">Select a thing</option>
<option ng-repeat="($thing_index, thing) in things track by $thing_index" ng-value="thing.description">{{thing.description}}</option>
</select>
В контроллере:
$scope.selectedThing = 'Select a thing'
$scope.things = [
{"id": 1, "description": "this is an option"},
{"id": 2, "description": "second option right here"},
{"id": 3, "description": "there are three even"}
]