Javascript 验证和退格冲突

Javascript 验证和退格冲突,javascript,validation,input,keycode,backspace,Javascript,Validation,Input,Keycode,Backspace,我有一个具有验证的输入字段。验证在所有浏览器中都非常有效。然而在Firefox中似乎存在一个问题。如果用户在该输入字段中按backspace、arrow或home键,则它根本不起作用 HTML: <input onkeydown="return isName(event)" class="form-control firstnameweb_text" placeholder="First Name" id="firstname_text" name="firstname_text" onb

我有一个具有验证的输入字段。验证在所有浏览器中都非常有效。然而在Firefox中似乎存在一个问题。如果用户在该输入字段中按backspace、arrow或home键,则它根本不起作用

HTML:

<input onkeydown="return isName(event)" class="form-control firstnameweb_text" placeholder="First Name" id="firstname_text" name="firstname_text" onblur="isEmptyfname(this)" required="" type="text">

JS:

function isName(e, t) {
try {
    if (window.event) {
        var charCode = window.event.keyCode;
    } else if (e) {
        var charCode = e.which;
    } else {
        return true;
    }
    if ((charCode > 64 && charCode < 91) || (charCode > 96 && charCode < 123) || (charCode > 7 && charCode < 10) || (charCode == 46) || (charCode > 38 && charCode < 39) || (charCode == 32) || (charCode == 190))
        return true;
    else
        return false;
} catch (err) {
    alert(err.Description);
}};
函数isName(e,t){
试一试{
if(window.event){
var charCode=window.event.keyCode;
}若否(e){
var charCode=e.which;
}否则{
返回true;
}
如果((charCode>64&&charCode<91)|(charCode>96&&charCode<123)|(charCode>7&&charCode<10)|(charCode==46)|(charCode>38&&charCode<39)|(charCode==32)|(charCode==190))
返回true;
其他的
返回false;
}捕捉(错误){
警报(错误描述);
}};