這篇文章給大家分享的是有關js如何限制input只能輸入有效的數字的內容。小編覺得挺實用的,因此分享給大家做個參考,一起跟隨小編過來看看吧。
景東網站制作公司哪家好,找創新互聯公司!從網頁設計、網站建設、微信開發、APP開發、響應式網站設計等網站項目制作,到程序開發,運營維護。創新互聯公司于2013年成立到現在10年的時間,我們擁有了豐富的建站經驗和運維經驗,來保證我們的工作的順利進行。專注于網站建設就選創新互聯公司。
第一種方法:通過字符搜索判斷等實現,適合功能增強
<!doctype html> <html lang="en"> <head> <meta charset="UTF-8"> <title>Document</title> <script src="js/jq.js"></script> </head> <body> <input type="text" id="Score" /> <script type="text/javascript"> $(document).ready(function() { //敲擊按鍵時觸發 $("#Score").bind("keypress", function(event) { var event= event || window.event; var getValue = $(this).val(); //控制第一個不能輸入小數點"." if (getValue.length == 0 && event.which == 46) { alert(1) event.preventDefault(); return; } //控制只能輸入一個小數點"." if (getValue.indexOf('.') != -1 && event.which == 46) { event.preventDefault(); alert(1) return; } //控制只能輸入的值 if (event.which && (event.which < 48 || event.which > 57) && event.which != 8 && event.which != 46) { event.preventDefault(); return; } }) //失去焦點是觸發 $("#Score").bind("blur", function(event) { var value = $(this).val(), reg = /\.$/; if (reg.test(value)) { value = value.replace(reg, ""); $(this).val(value); } }) }); </script> </body> </html>
方法二 通過大量正則來實現,簡單粗暴
<input type="text" name="je" onkeyup="clearNoNum(this)" />元 <script language="JavaScript" type="text/javascript"> 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 !=""){//以上已經過濾,此處控制的是如果沒有小數點,首位不能為類似于 01、02的金額 obj.value= parseFloat(obj.value); } } </script>
感謝各位的閱讀!關于“js如何限制input只能輸入有效的數字”這篇文章就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識,如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
分享文章:js如何限制input只能輸入有效的數字
當前地址:http://m.kartarina.com/article46/jecdeg.html
成都網站建設公司_創新互聯,為您提供網站設計公司、定制網站、虛擬主機、外貿網站建設、服務器托管、面包屑導航
聲明:本網站發布的內容(圖片、視頻和文字)以用戶投稿、用戶轉載內容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網站立場,如需處理請聯系客服。電話:028-86922220;郵箱:631063699@qq.com。內容未經允許不得轉載,或轉載時需注明來源: 創新互聯