当前位置:编程学习 > JSP >>

javascript jsp 表单验证 字符串长度

代码如下,Address为一个文本框,我想字符串长度小于5时,执行代码段1,现在输入的如果是字符的话,是对的,能验证;但如果输入的中文,照道理一个中文算两个字符,但这里我发现,一个中文字段一个字符。这是为什么??又该怎样验证呢?? if (form.Address.value.length<5) { 代码段1 } else{ }
答案:<script type="text/javascript">
	function getlength(str){
		  var count=0;
			var patten=	/^[!,@,#,$,%,^,&,*,(,),<,{,},>,0-9,a-z]*$/;
			var re = new RegExp(patten);
			for(var i=0;i<str.length;i++){
				
			if(re.test(str.charAt(i))){
					count++;
					
			}else{
				count=count+2;	
			}
		}
		return count;
	}
	if(getlength("hi你好")<5){
	 	alert("长度小于5");
	}else{
	 alert("长度大于5");	
	}
	
	</script>
其他:.length判断一个中文长度为一,所有类似方法都是这样的,你可以自己写个方法来返回长度,先判断是不是中文,是的话长度加2,否则加1 用正则表达式来匹配输入看看是不是字符,如果不是在判断长度是不是小于5。。。 

上一个:懂jsp的人帮忙解决一下谢谢了
下一个:编写jsp代码,使得点出“提交”按钮后,对录入“用户名”“密码”进行验证,不符合条件的弹出对话框提示

CopyRight © 2012 站长网 编程知识问答 www.zzzyk.com All Rights Reserved
部份技术文章来自网络,