Format nombre avec jQuery Mondialiser
Je suis en train de mettre en forme automatiquement un numéro avec la localisation correcte avec Mondialiser. Lorsque les utilisateurs entrées d'une valeur numérique j'ai besoin de Globaliser pour le lire, l'analyser dans le bon format, puis sortie dans le champ dans lequel l'utilisateur a saisi.
J'ai essayé comme ceci:
$(document).on('change','.format-me',function(){
var value = $(this).val();
Globalize.culture("en-US");
console.log(Globalize.format(value));
});
Mais il ne fonctionne pas, comme le nombre connecté ressemble exactement le même que celui entré par l'utilisateur.
Pourquoi ne pas Généraliser la modification de la forme?
- Pourquoi est-il nécessaire de généraliser un certain nombre? Ce type de données est à l'utilisateur d'entrer? La monnaie? Dates? (Juste pour mon information)
- Eh bien parce que chaque culture a une manière différente de l'affichage, même simple, les nombres réels, par exemple, 1.000 plutôt que 1 000. Dans les deux cas, je veux dire d'un millier, mais dans certaines cultures (principalement européens), le second serait de lire que un, depuis la virgule identifie les décimales.
- Ok, je comprends maintenant. Heureux que vous avez trouvé une solution!
Vous devez vous connecter pour publier un commentaire.
La raison pour laquelle le nombre connecté ressemble exactement la même que celle inscrite, c'est que vous appelez
Globalize.format()
avec un argument de type chaîne – elle ensuite il suffit de retourner son argument, comme indiqué, en supposant que vous utilisez Globalize.js (à l'origine appelé jQuery Mondialiser, plus tard, indépendantes du jQuery). La valeur d'un contrôle d'entrée dans le HTML est interprété comme une chaîne, et d'être traité comme un numéro, il doit être converti, en quelque sorte.Dans ce contexte, il doit être analysé avec
Globalize.parseFloat()
, et lors de l'enregistrement, vous devez passer par exemple, le paramètre de format den2
(parce que, pour un certain nombre, le format par défaut esti
, ce qui est rarement utile – l'un des pièges de Globalize.js):Cependant, je ne suis pas tout à fait voir le point lors de l'enregistrement du nombre et localisé dans un format. L'utilisateur entre un nombre et localisé dans un format, mais pour tout traitement (côté client ou côté serveur), il doit être entreposé dans un internationalisés format. Localisée format peut ensuite être utilisé ultérieurement lors de l'affichage des résultats à l'utilisateur.
Je viens de réaliser que l'utilisation de jquery spinner, il y a un moyen très simple de faire ce que j'ai essayé:
Lorsque vous affectez une valeur pour le compteur comme ça, automatiquement le format de la valeur en conséquence à la culture affecté à la casserole!