2016-08-29 2 views
-2

validiert werden Ich brauche Hilfe. Ich muss das Eingabefeld gemäß den Benutzeranforderungen mit AngularJS korrekt validieren.Das Feld kann nicht ordnungsgemäß mit Angular.js

Ich erkläre meinen Code unten.

<div ng-class="{ 'myError': billdata.longitude.$touched && billdata.longitude.$invalid }"> 
    <input type="text" name="longitude" id="longitude" class="form-control oditek-form" placeholder="Add Longitude coordinate" ng-model="longitude" ng-pattern="/^[0-9]+([,.][0-9]+)?$/" ng-keypress="clearField('businessno');"> 
</div> 
<div class="help-block" ng-messages="billdata.longitude.$error" ng-if="billdata.longitude.$touched"> 
    <p ng-message="pattern" style="color:#F00;">This field needs only number(e.g-0,1..9).</p> 
</div> 

Hier Voraussetzung ist, Benutzer kann nur Eintragsnummer mit + oder - wie diese i.e-+123.45 or -095.4567. Im aktuellen Fall ist die + oder - nicht erlaubt nur Zahlen sind erlaubt. Bitte helfen Sie mir, dieses Problem zu lösen.

Antwort

0

Sie müssen zulassen Symbole in regexp

ng-pattern="/^(\+|-)?[0-9]+([,.][0-9]+)?$/" 
+0

@ Yury: Aber '+' und '-' Symbol sollte nicht mandotary. – satya

+0

@satya Sie sind nicht. Deshalb gibt es '?' Nach der Gruppe. '/^(\+|--?[0-9]+([,.][0-9]+)?$/.test('6.89 '); // wahr ' –

0

ng-Muster entspricht = "/^([+ | -]. [[0-9] + ([,] [0-9] { n, m}))]? $/";

Versuchen Sie es mit diesem ersetzen nur n und m mit minimalen Anzahl von Dezimalstellen, dh in ur Fall sein 0 und m mit der höchsten Anzahl von Nachkommastellen erlaubt

0

Sie können wie unter eine für benutzerdefinierte Validierung eigene Richtlinie schreiben.

[Hier klicken] [1]

Diese ungerade Anzahl dierctive, nur gerade Zahl ist erlaubt.

[1]: http://plnkr.co/edit/Ld0ZfVvMLoQPm5lDHMbS?p=preview 
Verwandte Themen