身思乐,人事爱,稳恒不言败!

validate中,value长度校验(中文长度)

validate中,无论minLength还是maxLength校验,中文占一个字符。但后台数据库的varchar2中文占2个字节,所以当validate长度校验通过后,后台不一定能成功保存(或者是修改)数据。
因此,这只能在validate里对中文长度进行校验。其方法如下:

//中文字符长度处理
$.validator.addMethod("StringLength", //验证方法名称
    function(value, element, param) { //验证规则
        var flag = false;
        var length = value.length;
	for (var i = 0; i < length; i++) {
	    if (value.charCodeAt(i) > 127) {
	        length++;
	    }
	}
	if (length <= 50) {
	    flag = true;
	}
	return flag;
    }, '用户组名称长度不能超过50' //验证提示信息
);