所以我有一个传回的对象。该对象是一堆调查问题,可以选择输入响应。这个对象有一个名为" Mandatory"的变量。意思是这个问题是强制性的。
因此,我们可以显示问题并传回答案(" o.Answertext")。但我正在努力设置强制性字段验证。
<div ng-if="o.QuestionType == 'Text'">
<textarea class="form-control" ng-model="o.AnswerText"
name="{{o.SurveyQuestionId}}" rows="5" id="comment"></textarea>
<br />
<div ng-if="o.Mandatory == true">
<span style="color:red" ng-if="form.$submitted || form.o.SurveyQuestionId.$touched"
ng-show="form.o.SurveyQuestionId.$error.required">
Required
</span>
</div>
</div>
我可以看到ng-if="o.Mandatory == true
已激活。但是我的范围ng-if
永远不会被激活。
答案 0 :(得分:2)
DEMO
在ng-required
<textarea>
<form name='mainForm'>
<div ng-if="o.QuestionType == 'Text'">
<textarea class="form-control" ng-required='o.Mandatory'
name='{{o.SurveyQuestionId}}' ng-model="o.AnswerText" rows="5" id="comment"></textarea>
<br />
<div style='color: red' ng-if="mainForm[o.SurveyQuestionId].$touched && mainForm[o.SurveyQuestionId].$error.required">
Required
</span>
</div>
</div>
</form>
这是docs