Модель ng не работает для тегов выбора опций

0

У меня есть несколько тегов select, которые отображают список параметров, эти теги select будут инициализированы некоторым значением, определенным в массиве, но, похоже, что ng-model не работает в моем случае, вот мой код:

<div ng-repeat="choice in choices">
            <select 
            ng-model="choice.competence.codeCompetence"
            ng-options="competence.id as competence.titre group by competence.group for competence in competences track by competence.id"> <input type="text" ng-model="choice.niveauRequis"> Ans --- Selected option : {{choice.competence.codeCompetence}}
            </select>
        </div>

И это jsfiddle, чтобы понять мою проблему:

http://jsfiddle.net/qWzTb/3628/

Как я могу решить эту проблему.

  • 1
    Вы должны выбирать выражения, или as или track by , а не оба. Из документов : «Будьте внимательны при использовании select as и track by в одном выражении». , Кроме того, ng-repeat создает ngModel child scope , поэтому у вас могут возникнуть проблемы с ngModel . Всегда используйте dot rule или controller as syntax .
Теги:

2 ответа

0

Вы должны выбрать между as синтаксисе или track by с track by выражения. Использование их вместе создает несколько проблем.

Из документов:

"Будьте осторожны при использовании select as и track в одном выражении".

Кроме того, ng-repeat создает ngModel child scope, поэтому у вас могут возникнуть проблемы с ngModel. Всегда используйте dot rule или controller as syntax.

DEMO

  • 0
    спасибо, но кажется, что в данной демонстрации теги выбора всегда пусты
  • 0
    Что вы хотите иметь в виду под " всегда пусто "?
Показать ещё 2 комментария
0

Пожалуйста, проверьте этот скрипт

Я удалил track by competence.id и это, похоже, работает нормально.

Ваш массив competences имеет свойство id поэтому ваш track by не нужен.

  • 0
    Это правильно @ developer033

Ещё вопросы

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