Leerzeichen zwischen Zahlen einfügen?

Ich versuche eine Zahleneingabe zu machen. Ich habe so gemacht, dass meine Textbox nur Zahlen über diesen Code akzeptiert:

function isNumber(evt) {
    evt = (evt) ? evt : window.event;
    var charCode = (evt.which) ? evt.which : evt.keyCode;
    if (charCode > 31 && (charCode < 48 || charCode > 57)) {
        return false;
    }
    return true;
}

Aber jetzt stellt sich die Frage, wie ich Leerzeichen erstellen würde, wenn der Benutzer seine Nummer eingibt, ähnlich wie beim iPhone, aber mit Zahlen, zum Beispiel, wenn er Folgendes eingibt: 1000 wird es 1 000;

1
10
100
1 000
10 000
100 000
1 000 000
10 000 000
100 000 000
1 000 000 000

Usw...

Ich habe versucht, die Eingabe von rechts für jeweils 3 Zeichen zu lesen und ein Leerzeichen hinzuzufügen. Aber mein Weg ist ineffizient und wenn ich den Wert in der Textbox von 1000 auf 1 000 ändere, wird er aus irgendeinem Grund ausgewählt. Wenn Sie danach eine Taste drücken, wird das Ganze gelöscht.

Wenn Sie wissen, wie das geht, verzichten Sie bitte auf Javascript-Plugins wie jQuery. Danke dir.

Antworten auf die Frage(2)

Ihre Antwort auf die Frage