2016-07-01 10 views

Antwort

1
<input type="number" min="0" max="99"/> 

würde perfekt für Webbrowser funktionieren.

In AngularJS

<input type="tel" ng-model="value"/> 

verwendet werden muss, ergibt dies eine Tastatur mit Zahlen und Symbolen.

das Konzept der $ Nutzung beobachten in AngularJS sowohl die maximale Grenze und Eingabetyp als Zahl erreicht werden kann.

Wenn der neue Wert Länge von mehr als 2 wird dann Wert des Textfeldes gesetzt auf alten Wert

$scope.$watch('value', function(newVal, oldVal) { 
    if(newVal.length > 2) {  
     $scope.value = oldVal; 
    } 
} 

Es folgt der reguläre Ausdruck für ganze Zahlen

var onlyNumbers = /^\d+$/; 

Wenn der neue Wert dem regulären Ausdruck entspricht, wird ein Array oder sonst zurückgegeben Null. Wenn der Rückgabetyp null ist dann Wert von Text Felder alten Wert gesetzt

var r = newVal.match(onlyNumbers); 
    if(r===null){ 
     $scope.value = oldVal; 
    } 

Die vollständige Lösung im Plunker folgenden Link enthalten ist:

https://plnkr.co/edit/WrZ3xKs9EcXOvCemuIck?p=preview

+0

Der input type =“ tel "arbeitet mit der maximalen Länge. Aber wir wollen die Lösung für den Eingangstyp = "Nummer". Und hier wird die maximale Länge nicht angewendet. – user1312685

Verwandte Themen