我创建了plunker。
我在" + Name"时动态生成输入元素。单击按钮,每个都在ng-form内。
如何获取ng-form的所有实例以验证每个ng-form?这样" + Name"如果字段无效或创建了新的ng-form,按钮仍保持禁用状态?
修改 有关表单结构的更多详细信息
由于简洁原因,我删除了表单中的其他字段。它基本上是一个很长的形式,比如
<form name="myForm">
<input name="one" />
.
.
<div ng-repeat....>
<ng-form>
<input name="schoolName" />
</ng-form>
</div>
<button>+ Name</button> <!-- I cannot check for myForm.$valid here-->
<!-- since the person might not filled the rest of the below fields -->
<!-- hence the need to grab "each" "ng-form" -->
<input name="some" />
<input name="other" />
</form>
答案 0 :(得分:6)
1)http://docs.angularjs.org/api/ng.directive:form说:
在角形式中可以嵌套。这意味着外形是 在所有子表单都有效时有效。
因此,只有当所有儿童表格都有效时,您的主表格才有效。
2)如果你想/需要在主窗体中引用子FormControllers,你需要使用自定义指令。
我更新了您的代码:http://plnkr.co/edit/Vvz6VXJUj4lF0NR9gjjL