Jquery ajouter des virgules à l'entrée de nombre avec décimales lors de la frappe

Je suis en train d'ajouter des virgules pour une saisie de texte qui permet à un nombre tout en tapant. Mais elle devrait aussi permettre de décimales. Voici mon code pour que les chiffres seuls, ne peuvent tout simplement pas comprendre la virgule chose.

$('input.number').keyup(function(event) {

  //skip for arrow keys
  if(event.which >= 37 && event.which <= 40){
   event.preventDefault();
  }

  $(this).val(function(index, value) {
     return value
    .replace(/\D/g, "")
    .replace(/\B(?=(\d{3})+(?!\d))/g, ",");
  });
});

Si quelqu'un a une solution ce serait super merci.

Violon:
http://jsfiddle.net/yWTLk/348/

Mise à JOUR: Quelques bons commentaires, mais peut-être peut-on penser à une façon d'avoir un champ de saisie de texte qui ses modifiable et dans le même temps, les formats de votre numéro avec des virgules et respecte les décimales. Quelque chose me dit, il est pratiquement impossible de le faire, mais nous allons voir si quelqu'un peut penser à une solution.

Et la raison pour laquelle il est bon d'avoir de format automatique lors de la frappe est parce que si vous entrez dans un très grand nombre vous pourriez avoir perdu tout en le faisant. Par exemple:

  10000000000000000000000000000000000000000000

Qui serait un cauchemar pour entrer correctement, d'où automatique du format, de vous dire si vous êtes absent ou n'est pas un zéro. D'autre part de valider par la suite montrera u l'erreur et peut-être oui, vous pouvez la corriger mais c'est une étape supplémentaire.

  • Que faire si l'utilisateur colle une valeur? Choses à penser.
  • il fonctionne comme cela déjà, vérifiez violon mis à jour.
  • Coller sans clavier. Aussi, il est pratiquement impossible de modifier le numéro si vous tapez mal.
  • À partir d'une expérience utilisateur point de vue, je voudrais très il est recommandé de les laisser entrer dans leur valeur et puis, si la valeur est valide, mettre à jour le format par la suite. Auto-mise en forme que l'utilisateur tape peut faire pour un très frustrant interface.
  • je suis d'accord, il faut juste de l'avoir fait en temps réel. L'autre option est une fois qu'ils cliquez sur désactivé, puis ils la valeur peut être mis à jour.
  • double possible de fonction jQuery pour pour format nombre avec une virgule pour les décimales et
  • pas de dupliquer, de l'autre on ne peut pas le faire en ligne.
  • Mec, il vous donne la fonctionnalité après la virgule. Ce que vous avez demandé pour le droit au large de la chauve-souris.
  • Notez que si vous utilisez le type d'entrée=nombre le script ne fonctionne pas correctement

InformationsquelleAutor Hard Fitness | 2014-04-15