Как проверить входные данные, динамически созданные с использованием ng-repeat, ng-show (angular)
У меня есть таблица, созданная с помощью ng-repeat. Я хочу добавить проверку для каждого элемента в таблице. Проблема в том, что каждая входная ячейка имеет то же имя, что и ячейка над и под ней. Я пытался использовать{{$index}}
значение для ввода входных данных, но, несмотря на то, что строковые литералы в HTML выглядят правильно, теперь оно работает
Вот мой код на данный момент:
<tr ng-repeat="r in model.BSM ">
<td>
<input ng-model="r.QTY" class="span1" name="QTY{{$index}}" ng-pattern="/^[\d]*\.?[\d]*$/" required/>
<span class="alert-error" ng-show="form.QTY{{$index}}.$error.pattern"><strong>Requires a number.</strong></span>
<span class="alert-error" ng-show="form.QTY{{$index}}.$error.required"><strong>*Required</strong></span>
</td>
</tr>
Я пытался удалить{{}}
из индекса, но это тоже не работает. На данный момент свойство проверки входных данных работает правильно, но сообщение об ошибке не отображается.
У кого-нибудь есть предложения?
Edit: В дополнение к замечательным ответам ниже, здесь есть статья в блоге, которая покрывает эту проблему более подробно:http://www.thebhwgroup.com/blog/2014/08/angularjs-html-form-design-part-2/