Я добавил атрибуты проверки поля, такие как «обязательный» и «шаблон» в моей форме, и форма находится внутри ng-контроллера. Валидация работает. Но похоже, что проверки активируются при загрузке страницы, и я вижу, что все поля помечаются как недопустимые с сообщением об ошибке при загрузке страницы.Подтверждение угловой формы при загрузке
Я попытался добавить атрибут "novalidation" в форму, указанную в примерах на сайте AngularJS, но не повезло.
Я бы хотел, чтобы проверка была инициирована при первом попытке пользователя взаимодействовать с ней. Как я могу это сделать?
Update
Вот пример https://jsfiddle.net/davidshen84/00t197gx/
<div class="mdl-cell mdl-cell-6-col mdl-textfield mdl-js-textfield">
<input class="mdl-textfield__input" type="text" id="screenname" pattern="[a-zA-Z0-9]{3,}" ng-model="comment.screenname" required/>
<label class="mdl-textfield__label" for="screenname">Screen Name</label>
</div>
При загрузке вы должны увидеть все поля ввода имели красную линию под ними, которые указывают, что они находятся в недействительных состоянии. И линия становится синей после проверки.
Примечание: Стиль на кнопку проверка не работает ... не должно быть проблемой в этой проблеме.
могли бы вы добавить 'markup'? как вы показываете валидацию? используя 'ng-messages' или показывая и скрывая' div 'используя' ng-show' ..? –
это не похоже на нормальное поведение, но без образца вашего кода трудно понять, почему это происходит или предлагают альтернативы. – Claies