Angular come visualizzare il numero sempre con 2 cifre decimali in <input>

Ho un valore float per il ng-model che vorrei visualizzare sempre con 2 cifre decimali nel <input>:

<input ng-model="myNumb" step ="0.01" type="number">

Questo funziona per la maggior parte dei casi quando "myNumb" ha decimali. Ma non forzerà la visualizzazione dei 2 decimali se "myNumb" ha meno di 2 decimali (3.2), o un intero(30) Come posso forzare la visualizzazione di 2 decimali nel campo <input>

Soluzione

AngularJS - Ingresso numero con 2 cifre decimali potrebbe aiutare... Filtraggio:

  1. Impostare l'espressione regolare per convalidare l'input usando ng-pattern. Qui voglio accettare solo numeri con un massimo di 2 cifre decimali e con un separatore di punti.
<input type="number" name="myDecimal" placeholder="Decimal" ng-model="myDecimal | number : 2" ng-pattern="/^[0-9]+(\.[0-9]{1,2})?$/" step="0.01" />

Leggendo in avanti questo è stato indicato sulla prossima risposta ng-model="myDecimal | number : 2".

Commentari (8)

Hai provato a usare il filtro

<input ng-model='val | number: 2'>

https://docs.angularjs.org/api/ng/filter/number

Commentari (4)

Usa il filtro valuta con il simbolo vuoto ($)

{{val | currency:''}}
Commentari (1)