禁止使用jquery输入中文字符


prevent chinese character input using jquery

如何防止使用jquery输入中文字符?

$.validator.addMethod("regex", function(value, element, regexp) {
       var check = false;
            return this.optional(element) || regexp.test(value);
     },
   " Must contain only letters."
 );

这是我检查输入是否为字母的方法。

regex: /^'s*[a-zA-Z's]+'s*$/

但是我怎么检查汉字呢?

这可能有用:

function isChn(str){
    return /^['u4E00-'u9FA5]+$/.test(str);
}
http://jsfiddle.net/yiqiang1314/CMv7E/

问题不在于你的正则表达式-你已经阻止了除a-z和空格之外的每个字符(并且在a-z范围内没有中文字符)。但是,你在函数逻辑上有一个问题。正如目前所写的,如果字段是可选的,则允许使用中文字符。只有当为可选且为空时,您才应该跳过regexp测试:

return (!value && this.optional(element)) || regexp.test(value);