Ich mag Passwort durch den Benutzer für folgende Kriterien eingegeben überprüfen:Wie kann die Passwort-Validierung mit regulärem Ausdruck in angularjs nach bestimmten Kriterien hinzugefügt werden?
Passwort sollte mindestens 8 Zeichen lang sein und soll eine Zahl, ein Zeichen und ein Sonderzeichen enthalten.
Denn es ich folgenden regulären Ausdruck:
^(?=.*[A-Za-z])(?=.*\d)(?=.*[[email protected]$!%*#?&])[A-Za-z\[email protected]$!%*#?&]{8,}$
Ich habe versucht, diesen Ausdruck in meinem AngularJS Code wie folgt:
<md-input-container class="md-block" style="margin-top:0px;">
<label>Password</label> <md-icon
md-svg-src="/images/icons/ic_lock_black_24px.svg" class="name"></md-icon>
<input type="password" ng-model="newUser.userPassword"
name="userPassword" required
ng-pattern="^(?=.*[A-Za-z])(?=.*\d)(?=.*[[email protected]$!%*#?&])[A-Za-z\[email protected]$!%*#?&]{8,}$">
<div
ng-messages="registerForm.userPassword.$error">
<div ng-message="pattern">Password should be atleast 8 characters long
and should contain one number,one character and one special
character</div>
<div ng-message="required">Password should be atleast 8 characters
long and should contain one number,one character and one special
character</div>
</div>
</md-input-container>
In meinem obigen Code die Fehlermeldung angezeigt, wenn das Passwort-Feld ist leer und der Fokus ist verloren. Wenn der Benutzer ein Passwort eingibt, das die genannten Kriterien nicht erfüllt, wird die Fehlermeldung nicht angezeigt.
Wie soll ich dieses Problem beheben? Jemand bitte hilf mir.
können Sie benutzerdefinierte Richtlinie erstellen und ähnlichen apporach folgen ... http://stackoverflow.com/questions/36351760/directive-not-called-on-input-change/36352048#36352048 –
@AnkitPundhir: Eigentlich I will, dass regex in ng-pattern verwendet wird, das ist es. – user2839497