为什么即使updateOn设置为blur也需要ng -message?

时间:2015-04-27 13:50:36

标签: angularjs

<label>Integer</label>
<input type="text" ng-model="uForm.int" required name="int" 
       int-validator ng-model-options="{updateOn: 'blur'}">

<div ng-messages="myForm.int.$error">
 <div ng-message="required">This is required</div>
 <div ng-message="uIntVal">This is Invalid</div>
</div>

对于上述标记,初始化视图时始终会显示required消息。

Angular 1.4

1 个答案:

答案 0 :(得分:1)

您可以在初始div中添加ng-if,

<div ng-messages="myForm.int.$error" ng-if="myForm.int.$dirty">
 <div ng-message="required">This is required</div>
 <div ng-message="uIntVal">This is Invalid</div>
</div>

请参阅此Plunkr

我确实尝试在表达式中添加AND (&&)运算符,但这似乎不起作用,所以我找到了this link,这就行了。

对我来说没有工作 ...

<div ng-messages="myForm.int.$error && myForm.int.$dirty">
 <div ng-message="required">This is required</div>
 <div ng-message="uIntVal">This is Invalid</div>
</div>