限制输入键

时间:2014-12-29 13:19:31

标签: javascript

我有一个输入字段,希望能够限制仅由此集[0-0][a-z][A-Z].-_输入的字符

问题是字符`未被阻止并出现在输入字段中。除了一个字符和我的数据库中不应输入那种字符外,所有字符都被阻止。

代码是:

$.fn.restrict = function(pattern, allowed){
    allowed = allowed || [0, 46, 8, 9, 27, 13]; 
    $(this).keypress(function(event){
        if(event.which) {
            var key = event.which;
            if($.inArray(key, allowed) > -1){
              return true;   
            }
            var character = String.fromCharCode(key);
            if(pattern.test(character)){
                return true;
            }
            event.preventDefault();
            return false;
        };
    });
    return this;
};

我知道如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您可以在keydown商店中获取当前已验证的值,并在keyup或keypress上验证针对您的模式的新值以及新值是否符合要求还原旧值