這是我目前的驗證設置爲我的形式角度驗證NG-消息後提交併刪除文本
<ng-messages for="searchForm.$error" ng-if="searchForm.$submitted">
<ng-message when="required" class="error-message">This search field is required.</ng-message>
</ng-messages>
和我的形式
<form role="form" ng-submit="searchForm.$valid && searchcode()" name="searchForm" novalidate>
它工作正常。
但這裏是我不喜歡這種情況下
1)點擊進入空了搜索框 - >它顯示了正確的信息「字段是必須的」
2)開始打字和擦除的文本,而不按回車 - >它再次顯示錯誤消息
這是我不想要的第二種情況......任何想法?
你爲什麼使用'searchForm.searchQuery。$ touched'?這可能是你得到這種行爲的原因。嘗試使用只是'searchForm。$提交' – Anubhav 2014-12-05 14:56:17
擺脫它,只是提交了,但同樣的行爲...它似乎像第一次提交後,表單停留在「已提交」狀態,並且該錯誤消息只顯示文本框是空然後寧願當再次提交 – StevieB 2014-12-05 15:00:23
[這篇文章](http://stackoverflow.com/questions/16759221/angularjs-setpristine-to-reset-form)可能會幫助你。 – Anubhav 2014-12-05 15:02:29