Я новичок в угловых js, работая над проверкой формы. Я сделал все, но все еще валидация не работает. Вот мой код:
<form role="form" name="studentForm" class="form-horizontal" novalidate>
<div class="form-group">
<label for="student_email" class="col-sm-2 control-label">Email</label>
<div class="col-sm-10">
<input type="email" name="student_email" ng-model="studentEmail" class="form-control" id="student_email" required>
<div role="alert" class="error-msg" ng-messages="studentForm.student_email.$error">
<p ng-message="required">Your email is required.</p>
</div>
</div>
</div>
</form>
Автор сценария:
angular.module('app', ['ngMessages']);
Вот рабочий демо для вашего кода.
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular.min.js"></script>
<script src="//ajax.googleapis.com/ajax/libs/angularjs/1.5.5/angular-messages.js"></script>
<script src="script.js"></script>
Возможно, вы забыли добавить скрипты в свои html файлы. Также важна позиция скриптов в файле index.html. сообщение ng должно включаться только под угловым.min.js
Проверьте демоверсию
https://docs.angularjs.org/guide/forms
Обратите внимание, что novalidate используется для отключения проверки собственной формы браузера.
попробуйте удалить novalidate из тега формы:
<form role="form" name="studentForm" class="form-horizontal">
Я надеюсь, что это помогает.