【发布时间】:2017-02-07 10:08:59
【问题描述】:
我在一个表单上有三个输入字段。 我正在寻找一种方式,如果需要输入中的一个或任何组合,则表单有效,这意味着至少需要一个。即使这样,用户也可以输入任何组合的输入,表单也是有效的。
我已经阅读了 ng-required 但这会让我的表达太长。
<td>Name</td>
<td><input type="text" class="form-control input-xs" name="name"
ng-model="ctrl.orderSearch.name" minlength="4">
</td>
<td>Class</td>
<td><input type="text" class="form-control input-xs" name="class"
ng-model="ctrl.orderSearch.Class" minlength="6">
</td>
<td>Roll No:</td>
<td><input type="text" class="form-control input-xs" name="rollNo"
ng-model="ctrl.orderSearch.RollNo" minlength="6">
</td>
更新:我不想禁用提交按钮。该表单在以下任一情况下均有效:
1)字段一或二或三已填满
2) 1,2 或 1,3 或 2,3 已填充
3) 1,2,3 已填满。
另外,我尝试使用: ng-required="!(ctrl.orderSearch.name.length || ctrl.orderSearch.rollNo.length )" 字段。但是,当我提交表单时,我的姓名字段上会显示一个内置的 angular 弹出窗口,上面写着“请填写此必填字段”,因为每当在空表单上调用 form.$valid 时,将首先检查字段一个并因此弹出up 将显示在该字段上。但对用户来说,字段一似乎是强制性的,但事实并非如此。
另外,我不想编写自定义方法进行验证。是否可以使用 ng-required?请帮忙。
【问题讨论】:
-
请正确格式化您的代码
-
毫无疑问,我是 Angular js 的新手。
-
你可以在表单元素中使用 novalidate。
-
我用了 Ctrl+K ,它的格式只是这样。
-
你能创建你的代码的小提琴吗..
标签: angularjs forms validation