Я не могу найти решение в существующих ответах, поэтому я публикую это.
У меня есть форма, которая имеет много полей ввода, многие из которых требуются.
В форме есть кнопки (более 2) и привязаны к функциям в контроллерах с помощью ng-click.
Мне нужно, чтобы форма была проверена на ng-click перед выполнением функции.
По умолчанию проверка формы происходит после выполнения функции. Функция не должна запускаться, если требуемые поля не заполняются.
Я создал скрипку. https://jsfiddle.net/z1uyyqg9/
<script>
var app = angular.module('myApp', []);
app.controller('myCtrl', function($scope) {
$scope.name=undefined;
$scope.preview = function(){
alert("Previewed");
};
$scope.update = function(){
alert("Updated");
}
});
</script>
<div ng-app="myApp" ng-controller="myCtrl">
<form>
<input type="text" ng-model='name' required>
<button ng-click='preview()'>Preview</button>
<button ng-click='update()'>Update</button>
</form>
</div>