我在Javascript中更新了$scope
,现在想知道表单是否有效。如何强制进行验证或等待Angular运行验证?
以下是一些示例代码。当我点击按钮时,$scope.validateA = true
使表单无效,但不会立即生效。因此,在下一行代码中,如果我查看$scope.abForm.$valid
,它仍然是true
。
var validationApp = angular.module('validationApp', []);
validationApp.controller('mainController', function($scope) {
$scope.submitA = function() {
$scope.validateA = true;
//force validation to run here??
alert($scope.abForm.$valid);
};
});
<div ng-app="validationApp" ng-controller="mainController">
<form name="abForm">
a
<input ng-required='validateA' ng-model='a'>
<button type="button" ng-click="submitA()">submit a</button>
</form>
</div>
ng-required
指令设置为true
,它可以正常工作。http://plnkr.co/edit/ykjALPsvT6z2C0o6SrzV?p=preview - m.e.conroy