Исключение AngularJS of-options

0

У меня есть опции для моего выбора, и я покажу все варианты, кроме одного из контейнеров. Есть ли возможность сделать это:

<div ng-repeat="userScheduleManagementWeeksContainer in vm.userScheduleManagementWeeksContainer track by $index">               
            <select ng-options="c as c.calendarWeek for c in vm.userScheduleManagementWeeksContainer **except c == userScheduleManagementWeeksContainer.calendarWeek**">
                <option value="" />
            </select>

[РЕДАКТИРОВАТЬ]

DIV- Container1: 41 42 43

DIV- Container1: 40 42 43

DIV- Container1: 40 41 43

...

  • 0
    Почему бы вам не удалить его из массива, если вы не хотите, чтобы он отображался?
  • 0
    из-за того, что это трудно сделать, опции одинаковы для всех моих div-контейнеров, за исключением опции самого контейнера.
Теги:
select

1 ответ

0
Лучший ответ

Вы можете попытаться использовать ng-if, как показано ниже.

<div ng-repeat="userScheduleManagementWeeksContainer in vm.userScheduleManagementWeeksContainer track by $index">               
  <select>
    <option value="" />
    <option ng-repeat="c in vm.userScheduleManagementWeeksContainer" ng-if="c.calendarWeek != userScheduleManagementWeeksContainer.calendarWeek" value="{{c.calendarWeek}}">{{c.calendarWeek}}</option>
  </select>
</div>

Другой вариант - использовать фильтры. Это позволит вам поместить объект в ng-модель

<div ng-repeat="userScheduleManagementWeeksContainer in vm.userScheduleManagementWeeksContainer track by $index">               
  <select ng-options="c as c.calendarWeek for c in vm.userScheduleManagementWeeksContainer | filter : { calendarWeek : '!' + userScheduleManagementWeeksContainer.calendarWeek }">
    <option value="" />
  </select>
</div>
  • 0
    Спасибо, предложение работает почти, у меня есть еще один вопрос. в теге select у меня есть ng-модель - в модели должен храниться весь объект c, а не только календарная неделя. Есть ли способ сделать это? Большое спасибо.
  • 0
    Я обновил свой ответ, чтобы включить второй вариант. Надеюсь, что у вас получилось так, как вы хотели.

Ещё вопросы

Сообщество Overcoder
Наверх
Меню