// 只能輸入正數 function clearNoNum(obj) { // 只能輸入數字和小數點的文本框, 只能輸入小數點後兩位 obj.value = obj.value.replace(/[^\d.]/g,""); //清除「數字」和「.」之外的字符 obj.value = obj.value.replace(/^\./g,""); //驗證第一個字符是數字而不是. obj.value = obj.value.replace(/\.{2,}/g,"."); //只保留第一個. 清除多餘的. obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$","."); // 只能輸入小數點後兩位 obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$",".").replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); } // 可正數可負數 function clearNoNum(obj) { // 只能輸入數字和小數點的文本框, 只能輸入小數點後兩位 obj.value = obj.value.replace(/[^\d.-]/g,""); // 清除「數字」和「.」,「-」之外的字符 obj.value = obj.value.replace(/^\./g,""); // 驗證第一個字符不是. obj.value = obj.value.replace(/\.{2,}/g,"."); // 當存在連續的多個「.」時,只保留一個 obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$","."); // 只保留第一個「.」,清除多餘的「.」 obj.value = obj.value.replace(/\-{2,}/g,"-"); // 當存在連續的多個「-」時,只保留一個 obj.value = obj.value.replace("-","$#$").replace(/\-/g,"").replace("$#$","-"); // 只保留第一個「-」,清除多餘的「-」 if (!(/^\-/.test(obj.value))) { // 若是行首不是「-」,則不容許有「-」 obj.value = obj.value.replace("-",""); } // 只能輸入小數點後兩位 obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); }
使用方法javascript
<html> <head> <script type="text/javascript"> function clearNoNum2(obj) { // 只能輸入數字和小數點的文本框, 只能輸入小數點後兩位 obj.value = obj.value.replace(/[^\d.-]/g,""); // 清除「數字」和「.」,「-」之外的字符 obj.value = obj.value.replace(/^\./g,""); // 驗證第一個字符不是. obj.value = obj.value.replace(/\.{2,}/g,"."); // 當存在連續的多個「.」時,只保留一個 obj.value = obj.value.replace(".","$#$").replace(/\./g,"").replace("$#$","."); // 只保留第一個「.」,清除多餘的「.」 obj.value = obj.value.replace(/\-{2,}/g,"-"); // 當存在連續的多個「-」時,只保留一個 obj.value = obj.value.replace("-","$#$").replace(/\-/g,"").replace("$#$","-"); // 只保留第一個「-」,清除多餘的「-」 if (!(/^\-/.test(obj.value))) { // 若是行首不是「-」,則不容許有「-」 obj.value = obj.value.replace("-",""); } // 只能輸入小數點後兩位 obj.value = obj.value.replace(/^(\-)*(\d+)\.(\d\d).*$/, '$1$2.$3'); } </script> </head> <body> <input type="text" autocomplete="off" id="mitxt_jzjy_matchamt" onkeyup="clearNoNum2(this)" /> </body> </html>