2017-09-19 1 views
0

Je suis un peu confus ici ..AngularJS ng modèle me fait + 21 5e quand je entrer un numéro avec beaucoup de zéros

Je suis en train de créer un champ avec le numéro et la liaison dans ng- modèle, mais quand je saisir cette valeur

10000000000000000000000 

il me fait 1e+22 sur le résultat du modèle, comment puis-je faire comme numéro pas cette chaîne quand je beaucoup d'entrée de 0 derrière.

Espérons que quelqu'un ici me donne 10000000000000000000000 alors il devrait retourner 10000000000000000000000 sur le ng-modèle.

https://codepen.io/anon/pen/NaxoXJ

Merci

+0

Vous pouvez changer 'type = 'number'' à' type =' text'' et appliquer un masque sur cette entrée ou de préserver la valeur d'entrée sur' ng-change' –

Répondre

0

Comment puis-je faire comme numéro pas cette chaîne quand je beaucoup d'entrée de 0 derrière.

Ce n'est pas une chaîne, c'est un nombre affiché en utilisant la notation scientifique. Javascript utilise cette notation pour les grands nombres. Par exemple, dans JS, ce roi de la déclaration est valide:

var i = 1e+22; 

Au lieu d'utiliser {{test}} pour afficher votre valeur, appeler une fonction pour formater le nombre correctement (le résultat sera une chaîne et non un nombre).

This post explains how to print a number wihout using the scientific notation.

Updated codepen