JS控制只能輸入數(shù)字并且最多允許小數(shù)點(diǎn)兩位
下面通過(guò)一段代碼給大家介紹JS控制只能輸入數(shù)字并且最多允許小數(shù)點(diǎn)兩位,具體代碼如下所示:
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Title</title>
</head>
<body>
<input type="text" name="je" onblur="clearNoNum(this)"/>元
<script type="text/javascript">
function clearNoNum(obj) {
obj.value = obj.value.replace(/[^\d.]/g, ""); //清除“數(shù)字”和“.”以外的字符
obj.value = obj.value.replace(/\.{2,}/g, "."); //只保留第一個(gè). 清除多余的
obj.value = obj.value.replace(".", "$#$").replace(/\./g, "").replace("$#$", ".");
obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3');//只能輸入兩個(gè)小數(shù)
if (obj.value.indexOf(".") < 0 && obj.value != "") {//以上已經(jīng)過(guò)濾,此處控制的是如果沒(méi)有小數(shù)點(diǎn),首位不能為類似于 01、02的金額
obj.value = parseFloat(obj.value);
}
if (!obj.value || obj.value == '0' || obj.value == '0.0' || obj.value == '0.00') {
alert('退款金額不能為空');
return;
}
// 正常得話繼續(xù)調(diào)后端接口
}
</script>
</body>
</html>
ps:js如何限制input輸入框只能輸入數(shù)字
代碼中我是這樣實(shí)現(xiàn)的:
<input type="text"
class="form-control match-rotation-input"
maxlength="3"
οnkeyup="value=value.replace(/[^\d]/g,'')"http://輸入時(shí)校驗(yàn)
οnblur="value=value.replace(/[^\d]/g,'')"http://失去焦點(diǎn)時(shí)校驗(yàn)
ng-model="schedule.round"
placeholder="請(qǐng)輸入數(shù)字">
添加了一行οnkeyup="value=value.replace(/[^\d]/g,'')"
這里運(yùn)用了正則表達(dá)式來(lái)處理比較簡(jiǎn)單,然后添加提示語(yǔ):placeholder="請(qǐng)輸入數(shù)字"。
但是為什么還要加οnblur="value=value.replace(/[^\d]/g,'')"這一行呢?
這是因?yàn)樵诓僮鞯倪^(guò)程中,會(huì)發(fā)現(xiàn)如果你一直常按著字母鍵,然后點(diǎn)擊鼠標(biāo)讓input失去焦點(diǎn),
會(huì)導(dǎo)致在input框中出現(xiàn)字母,所以為了避免這個(gè)問(wèn)題,后面又加入了οnblur="value=value.replace(/[^\d]/g,'')"
注意:之前想過(guò)改type為:number類型 但是出來(lái)的樣式不符合我們要的,所以采用了正則來(lái)匹配
總結(jié)
以上所述是小編給大家介紹的JS控制只能輸入數(shù)字并且最多允許小數(shù)點(diǎn)兩位的相關(guān)知識(shí),希望對(duì)大家有所幫助!
- js取小數(shù)點(diǎn)后兩位四種方法
- js限制input只能輸入有效的數(shù)字(第一個(gè)不能是小數(shù)點(diǎn))
- Angularjs中的驗(yàn)證input輸入框只能輸入數(shù)字和小數(shù)點(diǎn)的寫法(推薦)
- javascript 取小數(shù)點(diǎn)后幾位幾種方法總結(jié)
- JS取數(shù)字小數(shù)點(diǎn)后兩位或n位的簡(jiǎn)單方法
- JS驗(yàn)證 只能輸入小數(shù)點(diǎn),數(shù)字,負(fù)數(shù)的實(shí)現(xiàn)方法
- 文本框只能輸入數(shù)字的js代碼(含小數(shù)點(diǎn))
- Javascript將數(shù)值轉(zhuǎn)換為金額格式(分隔千分位和自動(dòng)增加小數(shù)點(diǎn))
- JavaScript 如何刪除小數(shù)點(diǎn)后的數(shù)字
相關(guān)文章
JS jQuery使用正則表達(dá)式去空字符的簡(jiǎn)單實(shí)現(xiàn)代碼
本文給大家分享使用正則表達(dá)式去空字符的簡(jiǎn)單實(shí)現(xiàn)方法,需要的朋友參考下2017-05-05
基于JavaScript實(shí)現(xiàn)幸運(yùn)抽獎(jiǎng)頁(yè)面
這篇文章主要為大家詳細(xì)介紹了基于JavaScript實(shí)現(xiàn)幸運(yùn)抽獎(jiǎng)頁(yè)面,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2018-03-03
使用JavaScript獲取Request中參數(shù)的值方法
下面小編就為大家?guī)?lái)一篇使用JavaScript獲取Request中參數(shù)的值方法。小編覺得挺不錯(cuò)的,現(xiàn)在就分享給大家,也給大家做個(gè)參考。一起跟隨小編過(guò)來(lái)看看吧2016-09-09
JS對(duì)外部文件的加載及對(duì)IFRMAME的加載的實(shí)現(xiàn),當(dāng)加載完成后,指定指向方法(方法回調(diào))
callback方法回調(diào)是指當(dāng)某方法執(zhí)行完成后,去自動(dòng)執(zhí)行指定的另一方法的過(guò)程.下面舉兩個(gè)代表性的例子,說(shuō)說(shuō)JS世界里的方法回調(diào).2011-07-07

