js 控制 输入 数字

来源:互联网 发布:画数据流程图的软件 编辑:程序博客网 时间:2024/05/29 13:27
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"><html xmlns="http://www.w3.org/1999/xhtml"><head>    <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.4/jquery.min.js" type="text/javascript"></script>    <script type="text/javascript">        //示例代码:        //只允许输入数字与.:<input type="text" name="test" id="test" onkeydown="checkKeyForFloat(this.value,event)" style="ime-mode: disabled" />        //只允许输入数字   :<input type="text" name="test2" id="test2" onkeydown="checkKeyForNum(this.value,event)" style="ime-mode: disabled" />        //只允许输入数字与小数点          function checkKeyForFloat(value, e) {            var isOK = false;            var key = window.event ? e.keyCode : e.which;            if ((key > 95 && key < 106) ||                  //小键盘上的0到9            (key > 47 && key < 60) ||                   //大键盘上的0到9            (key == 110 && value.indexOf(".") < 0) ||   //小键盘上的.而且以前没有输入.            (key == 190 && value.indexOf(".") < 0) ||   //大键盘上的.而且以前没有输入.            key == 8 || key == 9 || key == 46 || key == 37 || key == 39     //不影响正常编辑键的使用(8:BackSpace;9:Tab;46:Delete;37:Left;39:Right)        ) {                isOK = true;            } else {                if (window.event) //IE                  {                    e.returnValue = false;   //event.returnValue=false 效果相同.                  }                else //Firefox                  {                    e.preventDefault();                }            }            return isOK;        }        //只允许输入数字          function checkKeyForInt(value, e) {            var isOK = false;            var key = window.event ? e.keyCode : e.which;            if ((key > 95 && key < 106) ||                  //小键盘上的0到9            (key > 47 && key < 60) ||                   //大键盘上的0到9            key == 8 || key == 9 || key == 46 || key == 37 || key == 39     //不影响正常编辑键的使用(8:BackSpace;9:Tab;46:Delete;37:Left;39:Right)        ) {                isOK = true;            } else {                if (window.event) //IE                  {                    e.returnValue = false;   //event.returnValue=false 效果相同.                  }                else //Firefox                  {                    e.preventDefault();                }            }            return isOK;        }        //设置有自定义属性 dtype 的文本框 允许输入的范围        function setDType() {            $(":text[dtype]").each(function () {                var dtype = $(this).attr("dtype");                var isOK = true;                switch (dtype) {                    case "number":                        $(this).css("ime-mode", "disabled").keydown(function (event) {                            isOK = checkKeyForFloat($(this).val(), event);                            if (!isOK) {                                //$(this).SuperFocus("", 500);                            }                            return isOK;                        });                        break;                    default:                        break;                }            });        }    </script>    <script type="text/javascript">        $(function () {            setDType();        });    </script></head><body>    年龄: <input type="text" maxlength="3" onkeydown="checkKeyForInt(this.value,event)" style="ime-mode: disabled"/><br />    身高:<input type="text" maxlength="5" dtype="number" /></body></html>

0 0