首页 > 解决方案 > 当表单中存在任何自定义 ng-message 错误时,是否可以禁用 Angular js 中的按钮?

问题描述

当表单中有任何错误消息时,是否可以禁用表单中的按钮,而不是内置错误,例如“必需”、“最小长度”,例如验证条件?

标签: angularjsng-messagesangularjs-ng-disabled

解决方案


希望以下有所帮助

  1. 如果您使用 设置自定义错误$scope.formName.$setValidity('errName', false);,那么您可以formName.$error.errName在 ng-disabled 中用作条件

在 JS 中,

$scope.formName.$setValidity('errName', false);//invalidate the form

您可以在需要时将错误设置为 true。

在 HTML 中,

<button type="button" ng-disabled="formName.$error.err">Button</button>
  1. 您可以使用标志并在出错时将其切换为 true 并在 ng-disabled 中使用该标志

在 JS 中,

$scope.disableBtn = true; //whenever button is to be disabled.

在 HTML 中,

<button type="button" ng-disabled="disableBtn">Button</button>

更新:添加 plunker 链接 https://plnkr.co/edit/5CFpFMAnZ8kkBh5z5vH4?p=preview


推荐阅读