2017-02-02 1 views
0

ich ein Eingabefeld haben:Wie wird die Validierung nach dem Senden von Angualr JS zurückgesetzt?

<input type="text" name="title" ng-model="genreData.title" class="form-control" 
     ng-class="{'error': addGenreForm.title.$invalid && !addGenreForm.title.$pristine}" 
     placeholder="Genre name" ng-minlength="minlength" required autofocus> 

Wenn ich diese Eingabe erfolgreich einreichen Form class="error" danach bekam ist:

$scope.genreData = {}; 

Wie kann ich es beheben?

+0

Könnten Sie die Funktion teilen, die das Formular ausfüllt? Ein Pseudocode könnte in Ordnung sein. – lealceldeiro

+0

fügen Sie bitte den Controller-Code hinzu. – Sravan

Antwort

1

Sie haben injizieren Sie das Formular in die ng-submit-Funktion und rufen Sie dann den integrierten Controller des Formulars auf $setPristine().

z.B.

Ausblick:

<form name="myForm" ng-submit="submitForm(myForm)"> 
    <!--Input Fields--> 
</form> 

Controller:

$scope.submitForm = function(form) { 
    //Do what ever I have to do 
    //Then reset form 
    form.$setPristine(); 
} 
0

denke ich

$scope.addGenreForm.$setPristine() and $scope.addGenreForm.$setUntouched

Einstellung arbeiten können nach der Einreichung zum Formular

Bitte teilen einige Plunker so kann ich mehr helfen, wenn Sie noch irgendwelche Fragen haben

+0

Wo kann ich das hinzufügen? – Darama

+0

in Ihrer Submitform() - Funktion, nachdem Sie das Formular erfolgreich abgeschickt haben –

Verwandte Themen