var reg=/^[\u2E80-\u9FFF]+$///Unicode编码中的汉字范围
if(reg.text('汉字验证')){
}
这些资料网上都有的啊
1、用正则表达式判断
代码如下:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/htmlcharset=gb2312" />
<title>js判断字符是否是汉字</title>
<style type="text/css">
.content{
width:350px
overflow:hidden
border:1px solid #ddd
}
</style>
<script language="javascript" type="text/javascript">
function CheckChinese(obj,val){
var reg = new RegExp("[u4E00-u9FFF]+","g")
if(reg.test(val)){
alert("不能输入汉字!")
var strObj = document.getElementById(obj)
strObj.value = ""
strObj.focus()
}
}
</script>
</head>
<body>
<div class="content">
<div>测试字符:<input id="test" type="text" onblur="CheckChinese('test',this.value)" /></div>
</div>
</body>
</html>
2、用 Unicode 字符范围判断
以下方法是用于统计输入字符串的长度,如果是汉字,则字符串长度加2 ;否则字符串长度加1。
代码如下:
function chkstrlen(str)
{
var strlen = 0
for(var i = 0i <str.lengthi++)
{
if(str.charCodeAt(i) >255) //如果是汉字,则字符串长度加2
strlen += 2
else
strlen++
}
return strlen
}
需要准备的材料分别有:电脑、html编辑器、浏览器。
1、首先,打开html编辑器,新建html文件,例如:index.html。
2、在index.html中的<script>标签,输入js代码:
document.body.innerText = test('测')
function test(t) {
var a = [
{'reg':/[^/u4e00-/u9fa5]/, 'name':'中文'},
{'reg':/[^0-9]/, 'name':'数字'},
{'reg':/[^A-Za-z]/, 'name':'英文'},
]
for (var i = 0i <a.lengthi++) {
if (a[i].reg.test(t)) {
return a[i].name
}
}
return '字符'
}
3、浏览器运行index.html页面,此时会打印出js判断的结果。