Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/246.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 使用jquery防止汉字输入_Php_Jquery - Fatal编程技术网

Php 使用jquery防止汉字输入

Php 使用jquery防止汉字输入,php,jquery,Php,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*[

如何防止使用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);
}
这可能有用:

function isChn(str){
    return /^[\u4E00-\u9FA5]+$/.test(str);
}

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


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


/^\s*[a-zA-Z\s]+\s*$/首先不包括中文字符。只有中文或朝鲜语+日语+泰国语+等等?对于visual basic,在这方面也有类似的问题,您可能只需要调整正则表达式解决方案并将其移植到jQuery或PHP,有什么更适合你的要求:@DaveChen实际上只要中文就可以了,但如果韩语+日语+泰语也被屏蔽了,那也没关系。主要是中国人character@minitech/^\s*[a-zA-Z\s]+\s*$/我过去只检查英文字母/^\s*[a-zA-Z\s]+\s*$/首先不包括中文字符。只包括中文或韩文+日文+泰文+等?对于visual basic,也有类似的问题,您可能只需要调整正则表达式解决方案并将其移植到jQuery或PHP,有什么更适合你的要求:@DaveChen实际上只要中文就可以了,但如果韩语+日语+泰语也被屏蔽了,那也没关系。主要是中国人character@minitech/^\s*[a-zA-Z\s]+\s*$/我过去只检查英文字母这对检查中文单词没问题。然而,我想要的是防止中文单词。我不知道为什么我的检查变成了,输入必须是中文而不是阻塞。我的问题是updatedfunction hasChnstr{return/[\u4E00-\u9FA5]+/.teststr;}//remove^和$。这可以检查中文单词。然而,我想要的是防止中文单词。我不知道为什么我的检查变成了,输入必须是中文而不是阻塞。我的问题是updated函数hasChnstr{return/[\u4E00-\u9FA5]+/.teststr;}//remove^和$。