Как установить подсказку для выбора с помощью ng-options?

У меня есть выбор, который использует ng-параметры, чтобы заполнить выбор следующим образом:

<select class="form-control" 
   ng-model="Data.selectedPerson" 
   ng-options="v as (v.Name ) for v in Data.people track by v.Name">
</select>

Я не хочу добавлять значение в коллекцию по умолчанию, если коллекция сотрудников пуста или значение еще не выбрано. Я хотел бы получить подсказку в списке избранных, чтобы поощрить их использовать выбор. Спасибо за ваши предложения.

1 ответ

Решение

Просто добавьте параметр по умолчанию, просто так angular будет использовать этот параметр, когда в ngModel ничего не выбрано или в модели заполнен недопустимый элемент. Таким образом, вам не нужно добавлять пустое значение в вашу коллекцию.

<select class="form-control" 
   ng-model="Data.selectedPerson" 
   ng-options="v as v.Name for v in Data.people  track by v.Name">
   <!-- Add your default option here -->
   <option value="">Please select a person</option>

</select>

Вы также можете изменить текст в зависимости от условия:

  <option value="">{{ Data.people.length ? "Please select a person" : "No one available for selection" }}</option>

Вы также можете удалить его из DOM, если оно уже выбрано.

   <option ng-if="!Data.selectedPerson" value="">Please select a person</option>
Другие вопросы по тегам