Jquery hinzufügen Kommas Eingabe-Zahl mit den Dezimalstellen bei der Eingabe

Ich versuche, fügen Sie Kommas, um eine Eingabe von text ermöglicht, dass eine Anzahl während der Eingabe. Sollte aber auch Dezimalzahlen erlauben. Hier ist mein code für die zahlen, nur kann einfach nicht herausfinden, die dezimal Sache.

$('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, ",");
  });
});

Wenn jemand eine Lösung hat, das wäre Super, thx.

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

UPDATE: Einige gute Kommentare, aber vielleicht kann jemand denken, der einen Weg zu einer input-text-Feld, die Ihre editierbaren und an der gleichen Zeit-Formate Ihre Zahl mit Kommas und achtet Dezimalstellen. Etwas sagt mir, dass seine fast unmöglich, dies zu tun, aber mal sehen, wenn jemand denken kann, eine Lösung.

Und der Grund, warum es gut " auto-format während der Eingabe ist, weil wenn Sie in eine sehr große Zahl, die Sie erhalten möglicherweise verloren, während es zu tun. Zum Beispiel:

  10000000000000000000000000000000000000000000

Das wäre ein Alptraum, geben Sie richtig, daher " auto-format, würden Sie sagen, wenn Sie fehlt oder ist nicht null. Auf der anderen Seite es überprüft danach werde u zeigen, die Fehler und vielleicht kann man ja korrigieren, aber es ist ein zusätzlicher Schritt.

  • Was ist, wenn der Benutzer fügt einen Wert? Dinge zu denken.
  • es funktioniert schon, überprüfen fiddle aktualisiert.
  • Einfügen ohne Tastatur. Auch ist es im Grunde unmöglich, Bearbeiten Sie die Nummer, wenn Sie geben es falsch.
  • Von einem user experience Sicht, ich würde hoch empfehlen, dass Sie geben Sie Ihre Wert-und dann, wenn der Wert gültig ist, aktualisieren Sie das format danach. Auto-Formatierung der Benutzer Eingabe machen kann für eine sehr frustrierend-Schnittstelle.
  • ich bin damit einverstanden, brauchen nur zu haben, es geschieht in Echtzeit. Eine andere option ist, wenn Sie klicken Sie auf aus (off) drücken Sie Wert aktualisiert werden kann.
  • möglich, Duplikat der jQuery-Funktion zu formatieren-Zahl mit Komma und dezimal
  • nicht doppelt, der andere tut es nicht inline.
  • Dude, es gibt Ihnen die Funktionalität, die Sie nach dem mit dem dezimal. Was Sie gefragt haben rechts von der Fledermaus.
  • Beachten Sie, dass wenn Sie die Eingangs-Typ=Nummer der script funktioniert nicht richtig

InformationsquelleAutor Hard Fitness | 2014-04-15
Schreibe einen Kommentar