我正在嘗試輸入數字。我做了,所以我的文本框只能通過該代碼接受數字:在數字之間添加空格?
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;
}
但現在的問題來,我將如何創造空間爲用戶鍵入他們的人數,很像iPhone的電話間距的事情,但是如果輸入的數字是1000,那麼它將變成1 000;
1
10
100
1 000
10 000
100 000
1 000 000
10 000 000
100 000 000
1 000 000 000
等...
我試圖讀取每個3個字符右側的輸入並添加一個空格。但我的方式效率低下,當我在文本框中將值從1000更改爲1 000時,它會因某種原因選擇它,然後在此之後進行任何按鍵操作,將整個事件擦除。
如果你知道如何做到這一點,請不要使用jQuery等javascript插件。謝謝。
一句警告:這確實很難正確。如果我在輸入中間點擊鼠標並添加一個數字,該怎麼辦?我在什麼地方移動光標並點擊粘貼?撤銷和重做有多好?處理鍵盤輸入比接受正確類型的字符序列要多得多。 – RichieHindle