У меня возникли проблемы с отображением пользовательского сообщения после проверки в моем приложении AngularJS.
Ниже мой код:
<div class="row">
<div class="input-field col s12">
<input id="description" rows="3" class="materialize-textarea no-pad-bot no-pad-top" ng-model="Description" ng-required="isValidationRequired()" ng-minlength="5"></input>
<span class="help-inline" ng-show="submitted && frm1.description.$error.required">Comments are required</span>
</div>
</div>
<input type="submit" class="white-text waves-effect btn" value="Enter" ng-click="submitted=true" />
Вышеупомянутое работает, но отображается сообщение "Пожалуйста, заполните это поле". Это не сообщение, которое я указал. Я хочу показать свое собственное сообщение. Я не могу найти что-то не так с моим кодом. Может ли кто-нибудь помочь указать мне в правильном направлении.
В коде есть несколько ошибок.
Форма не включена, я предполагаю, что вы просто не включили этот бит кода в этот пост.
Вам нужно указать имя ввода. Поэтому, когда вы делаете frm1.description, он знает, что такое описание.
Убедитесь, что функция isValidationRequired возвращает true
Вы должны включить novalidate в тег формы
Здесь у меня есть рабочий пример
<form novalidate name="frm1">
<div class="row">
<div class="input-field col s12">
<input name="description" id="description" rows="3" class="materialize-textarea no-pad-bot no-pad-top" ng-model="Description" ng-required="isValidationRequired()" ng-minlength="5"></input>
<div class="help-inline" ng-show="submitted && frm1.description.$error.required">Comments are required</div>
</div>
Ур получал сообщение, которое вы сделали? Звучит как проверка браузера. Проверьте ваше выражение и добавьте в него "novalidate". Т.е.
<form novalidate>
Может быть, это помогает...
name
и моя проверка появилась. Также добавленnovalidate
. Благодарю. Ты жжешь!