【发布时间】:2014-12-24 22:43:52
【问题描述】:
在 AngularJS 中,有没有办法将已经提交的表单标记为未提交(因此它会丢失 ng-submitted 类?
背景:
在我的 css 中,我使用角度验证类来完成以下任务:
- 最初,所有输入都具有正常的边框颜色。
- 如果用户将输入修改为无效值,请将边框颜色设置为红色。
- 如果用户单击提交按钮,则将所有无效输入的边框颜色设置为红色。
我是这样完成的:
input.ng-dirty.ng-invalid, .ng-submitted .ng-invalid {
border-color: #F00;
}
效果很好。现在我有一个提交异步请求的表单,如果服务器以成功状态响应,我想清除表单(并有效地将其重置为原始状态)。问题是当我清除表单时,它仍然有.ng-submitted 类,所以所有必填字段都有一个红色边框。但是我希望它们都有一个正常的边框。
我应该能够使用$setPristine() 将所有字段标记为原始字段,但我看不到任何将表单标记为未提交的方法。这可能吗,还是我需要为此创建和维护自己的类?
【问题讨论】:
标签: angularjs