我在当前项目中使用动态表单验证进行斗争,在我的表单中有两个字段,如用户名和电子邮件,两者都是强制性的。
如果用户单击添加更多(最多2次)按钮然后相同的上面的字段来了。这两个领域也是强制性的。如果用户删除了那些字段,验证将无法正常工作
我已经写过这两个领域(3次),我保留了ng-hide和ng-show, 我的代码在下面,
enter code here
我已将我的代码添加到Plunker: http://plnkr.co/edit/ErJl2Kg8maOn5GLaz9mb?p=preview
答案 0 :(得分:3)
避免使用ng-hide或ng-show。 准备模型,即JSON数组,并使用ng-repeat进行绑定,并在JavaScript中编写相关代码。
答案 1 :(得分:0)
使用ng-required="showUser2"
代替required
。
答案 2 :(得分:0)
在AngularJS形式中,即使隐藏了字段,仍然需要字段。
这意味着当您使用ng-hide
或ng-show
隐藏所需的表单输入字段时,AngularJS FormController completeProfile
仍会将表单视为$invalid
。
要获得动态表单的方式,您可以使用ng-if
隐藏不需要的输入字段。表单验证逻辑不考虑ng-if
内的输入字段。
我更新了您的Plunker。只有在表单有效时才会显示提交按钮。