将ng-repeat对象变量绑定到HTML中的变量

时间:2017-12-20 14:22:22

标签: angularjs angularjs-ng-repeat

请在这个问题上提供一些帮助。

我有一个名为['text'=> 'body here'] ['html'=> 'body here'] ['raw'=> 'body here'] testForm的表单。 ng-repeat="question in questions"有一个question。在这种形式,我试图应用验证。由于QuestionId是动态的,我无法为输入字段使用静态名称,因此我将questions作为名称应用于每个字段,以使其唯一。

现在验证要求我检查字段的名称。例如,检查question.QuestionId +字段名称(testForm)。我尝试了几种不同的方法,但我不知道如何将QuestionId添加到question.QuestionId

代码:

testForm

我正在尝试进行验证,但<div ng-form="testForm" novalidate> <div ng-repeat="question in questions"> <label class="item item-input" ng-class="{ 'has-error': testForm.question.QuestionId.$error }"> <input class="form-error border" type="text" ng-model="childName" name="{{question.QuestionId}}" ng-minlength="2" ng-maxlength="99" ng-required="true"> </label> </div> <div ng-show="testForm.question.QuestionId.$error"> asd </div> </div> 会在ng-show中查找变量question。如何首先将testForm转换为文本,然后将其转换为question.QuestionId

1 个答案:

答案 0 :(得分:3)

question.QuestionIdtestForm对象中创建formField。之后,您可以通过formField表单对象的密钥检索testForm

ng-show="testForm[myQuestionId].$error"
  

注意:您无法在question之外获得ng-repeat项,因此您可以更好地传递questionId个对象中的特定testForm获得特定的formField。