将验证规则添加到表单中(不属于单个输入字段,而是同时包含多个字段值)的角度方式是什么?
例如:
如果错误可以通过ng-messages显示出来,那就太好了。我正在使用角度1.3.10。
没有内置功能,但是需要很少的努力。
ng-messages
不依赖于任何特定的东西。它只需要一个其键可以由引用的对象ng-message
。最简单的解决方案是挂接到submit
事件中(无论如何您都可以这样做)并运行其他验证。
<form ng-submit="post()" name="myForm">
<input type="checkbox" name="one" ng-model="one" />
<input type="checkbox" name="two" ng-model="two" />
<input type="submit" />
<div ng-messages="formErrors">
<p ng-message="tooMany">Please, check one checkbox only</p>
<p ng-message="required">Please, check a checkbox</p>
</div>
</form>
提交后,post()
将调用该函数,该函数会向对象添加任何错误formErrors
:
$scope.post = function() {
...
var hasErrors = false;
$scope.formErrors = {
};
if ($scope.one && $scope.two) {
$scope.formErrors.tooMany = hasErrors = true;
}
if (!$scope.one && !$scope.two) {
$scope.formErrors.required hasErrors = true;
}
if (hasErrors) {
return;
}
}
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句