2016-08-11 47 views
-3

我想限制用戶輸入一個數字中的一個以上小數。我知道如何檢查他們是否已經輸入了1位小數,但我該如何繼續,檢查他們是否輸入了第二位小數,並用空字符串替換它? 謝謝!Javascript替換字符(如果已存在)

+2

你能告訴我們你試過什麼嗎?你能告訴我們一些代碼嗎? – jHilscher

+0

難道你不能只用''來代替嗎?它將自動允許用戶只輸入1個字符。 – metal03326

回答

0

您需要使用Javascript。我選擇了jQuery。

收聽每一個按鍵。每次用戶按下某個鍵時,都要檢查它。如果它是該輸入的第二個小數點,請防止按鍵。

$(document).ready(function() { 
 
    $('#test').on('keydown', function(event) { 
 
    if(event.which == 190 && $(event.target).val().indexOf('.') > -1) { 
 
     event.preventDefault(); 
 
    } 
 
    }); 
 
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<input id="test">

0

這裏是JavaScript的解決方案:https://jsfiddle.net/xrqe121e/3/

這個循環:

for (var i=0, flag=false; i<input.length; i++) { 
    var isDigit = isNumber(input[i]); 
    if (!(isDigit && flag)) { 
     str+=input[i]; 
    } 
    if (isDigit) flag = true; 
} 

越過接收到的輸入,並增加輸出的每一個字符,是不是除了第一個數字一個數字。