我想使用ng-repeat构建嵌套表单,如下所示.由于我的输入字段是必需的,我想在下一行添加一条错误消息,如下所示:
< span ng-show =“submitted&& editableForm.[e.name].$error.required”class =“error”>必填字段< / span>,我知道这是错误的“editableForm.[e .name].$error.required“,这样做的正确方法是什么?
< span ng-show =“submitted&& editableForm.[e.name].$error.required”class =“error”>必填字段< / span>,我知道这是错误的“editableForm.[e .name].$error.required“,这样做的正确方法是什么?
UPDATE
刚尝试添加< ng-form name =“rowForm”>,但这仅在我使用硬编码名称属性时有效,在我的情况下,这是在[e.name]中动态生成的
谢谢
狮子座
嵌套表格
<form name="editableForm" novalidate="novalidate"><div class="newEditable">
<ul ng-repeat="row in newRows">
<li ng-repeat="e in rowAttrs">
<input type="text" ng-model="newRows[e.name]" name="e.name" ng-required="e.required">
</li>
<li><a href="" ng-click="rm_row($index)">x</li>
</ul>
</div><a href="" ng-click="newRow()">{{add}}</a>
<a ng-show="newRows.length > 0" ng-click="saveIt(editableForm)">{{save}}</a>
</form>
对于此特定代码示例,您还需要将ng-form属性添加到第一个ng-repeat:
<ul ng-repeat="row in newRows" ng-form="innerForm">
您现在可以使用原始解决方案执行类似操作以突出显示所需字段:
<div class="validation_error" ng-show="e.required && innerForm['\{\{e.name\}\}'].$error.required">
required
</div>