[js]用JAVASCRIPT正则表达式限制文本字节数的代码_正则表达式教程-查字典教程网
[js]用JAVASCRIPT正则表达式限制文本字节数的代码
[js]用JAVASCRIPT正则表达式限制文本字节数的代码
发布时间:2016-12-29 来源:查字典编辑
摘要:做项目时自己写一段js给大家。关于文本限制字数的问题,在实际开发中经常用到;主要问题出现在对中文的限制,下面代码就解决关于限制字节数的校验问...

做项目时自己写一段js给大家。关于文本限制字数的问题,在实际开发中经常用到;主要问题出现在对中文的限制,下面代码就解决关于限制字节数的校验问题;只要将此下代码保存到一个js文件中并引入到校验的页面中,便可使用!同时希望大家给与大力支持和宝贵意见,本人会在今后闲余之际,发表更多的好文章,谢谢!!

以下是引用片段:

/*

value:值;

byteLength:数据库字节长度

title:字段中文名称

attribute:属性名称

使用方法说明:

添加(1)onkeyup="limitLength(this.value,100,'名称','name')"

(2)id="name"或【struts标签】styleId="name"

注意:id名称和attribute属性名称要一样

例子:<textareaname="explain"id="explain"onkeyup="limitLength(value,5,'语义说明','explain')">

<inputtype="text"name="explain"id="explain"onkeyup="limitLength(value,5,'语义说明','explain')">

*/

复制代码 代码如下:

functionlimitLength(value,byteLength,title,attribute){

varnewvalue=value.replace(/[^x00-xff]/g,"**");

varlength=newvalue.length;

//当填写的字节数小于设置的字节数

if(length*1<=byteLength*1){

return;

}

varlimitDate=newvalue.substr(0,byteLength);

varcount=0;

varlimitvalue="";

for(vari=0;i<limitDate.length;i++){

varflat=limitDate.substr(i,1);

if(flat=="*"){

count++;

}

}

varsize=0;

varistar=newvalue.substr(byteLength*1-1,1);//校验点是否为“×”

//if基点是×;判断在基点内有×为偶数还是奇数

if(count%2==0){

//当为偶数时

size=count/2+(byteLength*1-count);

limitvalue=value.substr(0,size);

}else{

//当为奇数时

size=(count-1)/2+(byteLength*1-count);

limitvalue=value.substr(0,size);

}

alert(title+"最大输入"+byteLength+"个字节(相当于"+byteLength/2+"个汉字)!");

document.getElementById(attribute).value=limitvalue;

return;

}

相关阅读
推荐文章
猜你喜欢
附近的人在看
推荐阅读
拓展阅读
  • 大家都在看
  • 小编推荐
  • 猜你喜欢
  • 最新正则表达式学习
    热门正则表达式学习
    编程开发子分类