js控制input只能輸入數字和小數點後兩位

工做中input='text'總會遇到要控制輸入數字,或者是輸入中文,輸入電話,輸入身份證號,郵箱等。今天我遇到的是要輸入數字而且只能小數點後面兩位的數字,還不能爲負數。javascript

javascripthtml

//控制只能輸入小數點後2位
function clearNoNum(obj) {
    obj.value = obj.value.replace(/[^\d.]/g, "");  //清除「數字」和「.」之外的字符   
    obj.value = obj.value.replace(/\.{2,}/g, "."); //只保留第一個. 清除多餘的   
    obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
    obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3');//只能輸入兩個小數   
    if (obj.value.indexOf(".") < 0 && obj.value != "") {//以上已通過濾,此處控制的是若是沒有小數點,首位不能爲相似於 0一、02的金額  
        obj.value = parseFloat(obj.value);
    }
}

htmljava

<input id="testinput" oninput="clearNoNum(this)" />
相關文章
相關標籤/搜索