У меня html вот так:
<div ng-if="item.fieldType == 'TextArea'" flex="100" ng-class="{error: form[item.id].$error}" class="ng-scope error flex-100">
<textarea name="{{item.id}}" ng-required="item.isRequired" ng-pattern="item.regexValidation" ng-model="item.value"></textarea>
<div ng-messages="form[item.id].$error" aria-live="assertive" class="ng-active">
<div ng-message="required" class="ng-scope">This is required!</div>
</div>
</div>
и при инициализации текстовая область недействительна и требуется показать ng-сообщение, как я могу сделать валидацию только при размытии? Я использую угловой 1,5 и угловой материал.
Я исправлю это, используя этот css (opacity: 0
и margin-top: -100px
взято из углового материала)
textarea + [ng-messages] [ng-message] {
opacity: 0;
margin-top: -100px;
font-size: 12px;
line-height: 14px;
color: red;
-webkit-transition: all .3s ease;
transition: all .3s ease;
}
textarea.ng-touched + [ng-messages] [ng-message] {
opacity: 1;
margin-top: 0;
}
ng-blur
вызывает функцию и оценивает значение ввода в ней.