Search code examples
javascriptjqueryinputvalidationalphanumeric

only allow English characters and numbers for text input


Live Demo: http://jsfiddle.net/thisizmonster/DveuB/

How can I change this so that the input only allows the characters A-Z, a-z, 0-9 while typing, without using a regular expression?


Solution

  • Assuming you also want to accept spaces:

    $("#user").keypress(function(event){
        var ew = event.which;
        if(ew == 32)
            return true;
        if(48 <= ew && ew <= 57)
            return true;
        if(65 <= ew && ew <= 90)
            return true;
        if(97 <= ew && ew <= 122)
            return true;
        return false;
    });
    

    If you don't want to accept spaces then remove the if(ew == 32) return true;

    JSFiddle