注册 登录
编程论坛 PHP技术论坛

关于如何计算英文长度和中文长度问题

jasongliet 发布于 2010-02-26 15:29, 968 次点击
在会员注册的时候,用户名长度要求4-16个字母或2-8个汉字,
但在js验证时候,语法如下:
if(curForm.Username.value.length<4 || curForm.Username.value.length>16)
 {
     alert('用户名为长度为4-16个字符!');
     curForm.Username.focus();
     founderr = true;
     return false;
 }   

此语句只能判断字母或数字长度,对于汉字如何判断?

求解!!!!!!!!!!!!!!!!!!!!!!!!!!!!
1 回复
#2
外部三电铃2010-02-26 19:05
String.prototype.getBytes = function() {   
    var cArr = this.match(/[^\x00-\xff]/ig);   
    return this.length + (cArr == null ? 0 : cArr.length);   
}   

if(curForm.Username.value.getBytes()<4 || curForm.Username.value.getBytes()>16)
{
     alert('用户名为长度为4-16个字符!');
     curForm.Username.focus();
     founderr = true;
     return false;
}
1