La validazione di un indirizzo e-mail è una procedura semplice in AngularJS.
Nella sua forma essenziale la validazione dell'e-mail in AngularJS si presenta in questo modo:
<form name="testForm" method="post" ng-submit="send()" ng-controller="TestCtrl" novalidate>
<div>
<input type="email" name="email" required />
</div>
</form>
L'attributo novalidate
fornisce ad AngularJS il controllo della validazione sottraendolo al browser. Gli errori di validazione possono essere gestiti in questo modo:
<div class="error-msgs" ng-show="testForm.email.$invalid && testForm.submitted">
<small class="error" ng-show="testForm.email.$error.required">
Your email is required.
</small>
<small class="error" ng-show="testForm.email.$error.email">
That is not a valid email. Please input a valid email.
</small>
</div>
Ossia:
testForm.email.$invalid && testForm.submitted
: Il form è stato inviato ma l'e-mail non supera la validazione.testForm.email.$error.required
: L'utente non ha inserito alcun valore nel campo.testForm.email.$error.email
: L'utente ha inserito un indirizzo e-mail non valido.
Quindi nel controller la verifica è semplice:
var app = angular.module('MyApp',[]);
app.controller('TestCtrl', ['$scope', function($scope) {
$scope.formValid = true;
$scope.send = function() {
if($scope.testForm.$valid) {
// Invio normale
} else {
$scope.formValid = false;
}
};
}]);