【问题标题】:Handle key using javascript onkeydown使用 javascript onkeydown 处理密钥
【发布时间】:2011-09-26 12:35:27
【问题描述】:

我有这个代码

function verifyKey(e)
{
    var keycode;
    if (window.event)
        keycode = window.event.keyCode;
    else if (e)
        keycode = e.which;
    regex=/[1-9]/;
    if(regex.test(keycode))
        return true;
    else
        void(0);
}

在 html 中我添加了一个输入并添加了 onkeydown 事件 onkeydown="verifyKey(event);"

我喜欢在显示在文本上之前验证密钥

如果键是数字或逗号(,) 或句号(.) 然后接受密钥 别的 拒绝它

谢谢

【问题讨论】:

    标签: javascript html regex onkeydown


    【解决方案1】:

    在您的代码中,您正在测试使用键码定义的正则表达式,因此键盘上的每个字符都将被允许,因为每个键的键码都是数字,因此您不会得到您期望的结果。而不是使用正则表达式尝试下面的代码

    <html>
    <head>
    <script type="text/javascript">
    function verifyKey(e)
    {
        var keycode;
        if (window.event)
            keycode = window.event.keyCode;
        else if (e)
            keycode = e.which;
    
    
        if((keycode>=48 && keycode<=57))
        {alert("if")
            return true;
        }
        else if((keycode == 188)||(keycode == 190))
        {alert("elseif");
            return true;
        }
        else
        {alert("else")
            return false;
        }
    }
    
    
    </script>
    </head>
    <body>
    <input type="text" onkeypress="return verifyKey(event)" />
    </body>
    </html>
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多