【发布时间】:2014-10-09 13:41:45
【问题描述】:
如何使表单输入在提交表单时变脏?
这是需要的,以便带有 $error 的输入字段可以是
例子:
name: <input type="text"
ng-model="user.name"
ng-model-options="{ updateOn: 'blur' }"
name="uName"
required /><br/>
提交表单后,我希望此字段(如果留空)使用“无效和脏”样式呈现:
.css-form input.ng-invalid.ng-dirty {
background-color: #FA787E;
}
【问题讨论】:
-
如果该字段是必填项,则不应允许提交。如果表单不脏或有错误,您应该禁用提交按钮。
-
嗨@m.e.conroy,这不会让用户感到困惑,因为他们有一个禁用的提交按钮并且无法突出显示错误的字段?
-
当然可以。您应该突出显示错误的字段。如果您使用的是 Angular 1.3,请查看 ngMessages,它是一个单独的模块,您需要包含它才能使用它。或者,我在我的答案中添加了一些代码,以展示您如何以 old 方式进行操作。
-
提交时这样做的问题是您必须停止提交事件的继续,如果您在表单有效之前禁用提交按钮,您不必担心这一点。
-
@m.e.conroy,感谢您在回答中添加详细信息。它帮助我解决了我的需求:-)
标签: angularjs forms validation