`ng-modello ” che – come verificare la presenza di solo i numeri?

Sto utilizzando un ng-pattern per controllare SOLO i numeri in mio ingresso. Ma per me che non funziona. Posso in grado di digitare in characters dopo il number. Come posso limitare I che?

ecco il mio codice :

<div ng-app ng-controller="formCtrl">
<form name="myForm" ng-submit="onSubmit()">
    <input type="text" ng-model="price" name="price_field" ng-pattern="/^[0-9]/" required>
    <span ng-show="myForm.price_field.$error.pattern">Not a valid number!</span>
    <input type="submit" value="submit"/>
</form>
</div>

Live Demo

  • Per accettare solo un numero nella casella di testo penso che di meglio si possa utilizzare type=”numero” nel tag input.
  • u può fare riferimento a questo thread: stackoverflow.com/questions/19827570/…

 

3 Replies
  1. 33

    Usare questa espressione

    ng-pattern="/^[0-9]*$/"

    AGGIORNAMENTO :

    per accettare i soli caratteri,è possibile utilizzare come questa.

    ng-pattern="/^[a-zA-Z]*$/"
    • Ok. per accettare charactors posso usare ng-pattern="/^[a-z][A-Z]*$/"– ?
    • Che cosa è l’esigenza esatta?
    • solo bisogno di inserire i caratteri ( nome campo )
    • Si prega di verificare l’AGGIORNAMENTO
    • Non accettare i numeri in virgola mobile
    • non lavoro per angularjs 1.2.x, permette anche di personaggi

  2. 6

    Provare questa regex: dovrebbe funzionare /^[0-9]+$/
    il segno ” + ” è per l’accettazione di una o più cifre.

  3. 4

    ng-pattern="/^[0-9]*$/" //modifica

    ng-pattern="/^\d{1,10}$/"

    NOTA: ‘\d’ possibile controllare non solo 0-9, anche per il numero di cifre come il greco cifre

    • perché vuoi cambiare? qual è il vantaggio di questo approccio?

Lascia un commento