有没有办法手动注入表单错误,我知道如何通过指令,但不知道如何从控制器注入错误。
<div ng-controller="myController">
<form name="createForm">
<div ng-repeat="item in someItems">
<input type="text" ng-change="customValidation()" />
</div>
<input type="button" ng-disabled="createForm.$invalid" value="Submit" />
</form>
</div>
控制器
function myController($scope) {
$scope.customValidation = function() {
//do some validation and made createForm valid/invalid based on it
};
}
答案 0 :(得分:0)
是的,您可以通过两种方式实现。
而不是Creaeform.$invalid
。您可以在范围内使用某些值。
您应该根据输入的验证结果将值设置为true或false。如果这对您没有意义,请发表评论。我会给一些代码。
另一种方法是将表单对象本身传递给控制器并在控制器中设置createForm.$valid = false;
。