在表单验证器AngularJS上动态添加ng-required验证器

时间:2016-05-30 21:25:10

标签: angularjs forms validation

我有一个AngularJS验证表单。 问题是我动态地在元素中添加验证器:

if (constraint.NotNull){
    elem.attr("ng-required","true");
}

此元素的NgModelController始终评估“form。$ valid = true”,即使是空值。

怎么了?

1 个答案:

答案 0 :(得分:1)

您无需动态添加属性。如果您仔细阅读了针对ngRequired的AngularJS API参考,您将了解到ngRequired的值可以绑定。那里的例子是最好的。

https://docs.angularjs.org/api/ng/directive/ngRequired

在你的情况下创建

$scope.isRequired = { field1: true, field2: false, ... }

您可以动态更改此值,AngularJS将反映出这一点。