2015-10-02 2 views
1

Я должен сделать форму для многоязычной системы управления контентом с угловымJS. Списокугловой с использованием ng-модели с выражением в ng-repeat

моего языка определяются как это в угловом объеме:

$scope.languages = 
[ 
{id:0,'name':'English'}, 
{id:1, name:'French'} 
    /* ... */ 
] 

в моем HTML я делаю вид, как это:

<div ng-repeat="lang in languages"> 
     <label for="titlel{{ lang.id }}">{{ lang.name }}</label> 
     <input type="text" class="form-control" ng-model="editquestion['titlel{{ lang.id}}']" id="titlel{{ lang.id }}" /> 
    </div> 

Это не работает должным образом, этикетки являются правильным, но привязка ng-модели не работает, текст не добавляется в текстовое поле, даже если есть данные editquestion.titleX, и когда я набираю текст в поле ввода html, типизированный текст реплицируется во всех полях.

Я проверил с инспектором, и атрибут ng-model выглядит правильно.

скриншоты выпуска здесь

http://accessdev.s3.amazonaws.com/temp/replicated1.PNG

вопрос нет, если я делаю HTML код вручную, например:

<label for="textl0">English</label> 
<textarea class="form-control" ui-tinymce="tinymceOptions" ng-model="editquestion.textl0"></textarea> 

<label for="textl1">French</label> 
<textarea class="form-control" ui-tinymce="tinymceOptions" ng-model="editquestion.textl1"></textarea> 

ответ

1

ng-model ожидает выражение (который затем оценивается в курсе nt), он не работает так же, как, например, установка идентификатора для метки. Попробуйте изменить параметры ввода данных:

<input ... ng-model="editquestion['titlel' + lang.id]" /> 
+0

Работы перфективно, спасибо! –

+0

Добро пожаловать! ;) – plamut