Ich habe ein Eingabefeld:AngularJS: auf klicken, wenn pristine ODER wenn schmutzig und gültig
<input name="fName" type="text" class="form-control dude.firstName"
ng-trim="false"
ng-pattern="patterns.name"
ng-model="dude.firstName"
ng-model-options="{ updateOn: 'blur' }"
required>
<span class="error" ng-show="idForm.fName.$error.pattern">
Please only use letters, forward slashes, and hyphens
</span>
Meine Anforderungen sind dies:
- Wenn der Benutzer nichts geändert hat, muss es laufen saveIdentification
- Wenn der Benutzer etwas hat sich geändert und es ist nicht gültig, dann stoppen und damit die Form der Nachricht
anzuzeigen Wenn der Benutzer sich etwas geändert hat und es gilt, dann laufen saveIdentification
<span ng-show="localEditing.id=='SAVE'" tabindex="0" title="Save Changes" class="globalIcon-save action-edit-button" ng-click="(idForm.$pristine || (idForm.$dirty && idForm.$valid)) && saveIdentification()"> </span>
Die Lösung oben erfüllt Anforderungen 1 und 2, aber nicht 3. Es wird nicht speichern, wenn die Form und gültig geändert wird.
Diese fuilfills Anforderungen 1 und 3, aber nicht 2. Wenn der Benutzer ungültige Daten eingegeben hat und klickt auf das Symbol speichern, es läuft saveIdentification(). – Lurk21
Ich habe meine Antwort bearbeitet. Bitte prüfe. – SamB
Gleiches. Bitte beachten Sie oben, wo ich Informationen über die Validierung angegeben habe. – Lurk21