Onkeypress, javascript不验证特殊字符



Javascript函数,避免使用特殊字符。它与α &数字。唯一的问题是,当我需要包含-时。(k>= 188 &&K <= 190) -这不起作用。我做错了什么?

    var k;
    document.all ? k = e.keyCode : k = e.which;
    return ((k > 64 && k < 91) || (k > 96 && k < 123) || (k >= 188 && k <= 190)|| k == 8 || k == 32 || (k >= 48 && k <= 57));

这是我最新的代码,它将支持所有的浏览器。函数isalphannumeric (evtGet) {

    var browser = navigator.appName;
    if (browser == "Microsoft Internet Explorer" || browser == "Mozilla Firefox") {
        var keyGet = evtGet.keyCode;
    } else {
        var keyGet = evtGet.which; //(window.Event) ? evtGet.which : evtGet.keyCode;
    }
    alert(keyGet);
        if ((keyGet > 47 && keyGet < 58) || (keyGet > 64 && keyGet < 91) || (keyGet > 96 && keyGet < 123) || (keyGet == 9) || (keyGet == 32) || (keyGet == 8) || (keyGet == 0) || (keyGet == 13)||(keyGet==110))
            return;
        else
            if (browser == "Microsoft Internet Explorer" || browser == "Mozilla Firefox")
            window.event.returnValue = null;
        else
            evtGet.preventDefault();
}

将上面的代码放在jsp

的头部

和从输入字段调用onKeyPress = "返回isAlphaNumeric(事件,this.value);">

假设您想根据您的要求更改代码,有一个警告框,请先运行代码,然后单击键盘,它将显示按您的要求的keycode

示例-您想在字段中输入(.)它将显示点id 47的键码,您可以写入(keyGet==47)

最新更新