【发布时间】:2014-05-15 17:40:01
【问题描述】:
我有以下表格:
<form name="formuser" action='/signup' method='post' novalidate>
<input type="text" name="firstname" ng-model="firstname" ng-class="{ 'has-error' : (formuser.firstname.$invalid && !formuser.firstname.$pristine) || hasSubmitted}" required />
<button type="submit" ng-disabled="formuser.$invalid" ng-click="hasSubmitted=true">Submit</button>
</form>
我正在尝试将“has-error”类添加到在用户输入内容或在输入仍处于原始状态时点击提交按钮后无效的输入字段。我已将 ng-disabled 添加到提交按钮以禁用表单提交,但我仍然希望 ng-click 触发以更改 hasSubmitted 范围。问题是按钮上的 ng-disable 也禁用了 ng-click。
我知道我总是可以在表单上使用 ng-submit,在我的控制器中进行验证,然后触发 ajax 请求,但我的身份验证框架要求我实际提交表单并重定向浏览器。
【问题讨论】:
标签: forms angularjs validation angularjs-ng-click