zoukankan      html  css  js  c++  java
  • js只允许输入数字和小数点

    <!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>
  • 相关阅读:
    Javascript 运动中Offset的bug——逐行分析代码,让你轻松了解运动的原理
    Javascript 多物体运动——逐行分析代码,让你轻松了解运动的原理
    thymeleaf设置网页脚本里面的值
    win10系统瞬间黑屏问题
    Spring boot启动端口设置
    idea打包jar包
    java socket使用例子
    java使用socket读取网页
    java读取网页
    Error:Unexpected lock protocol found in lock file. Expected 3, found 0
  • 原文地址:https://www.cnblogs.com/liusir/p/3447846.html
Copyright © 2011-2022 走看看