js控制input控件只能输入数字

废话不多说,直接上代码

 1 //js控制input控件只能输入数字    
2 function OnlyinputNumber(e, obj, withFraction) {
3 if (!e) {
4 e = window.event;
5 }
6 if (e.which) {
7 key = e.which;
8 } else {
9 key = e.keyCode;
10 }
11 validNumber = false;
12 if (key == 8 //Backspace
13 || key == 46 //Delete
14 || key >= 35 && key <= 37 //End, Home, Left
15 || key == 39 //Right
16 || key == 189 //负号“-”
17 ) {
18 validNumber = true;
19 }
20 if (!e.shiftKey) {
21 //only check shift is not pressed
22 if (withFraction
23 && obj.value.length > 0
24 && key == 190 //period
25 && obj.value.indexOf(".") == -1) {
26 validNumber = true;
27 }
28 if (key == 48 && obj.value.length > 0) { // 0
29 validNumber = true;
30 }
31 if (key >= 49 && key <= 57) { // 1~9
32 validNumber = true;
33 }
34 }
35 if (!validNumber) {
36 if (e.preventDefault) {
37 e.preventDefault();
38 } else {
39 e.returnValue = false;
40 }
41 }
42 }


 

原文地址:https://www.cnblogs.com/yujian/p/2286314.html