[js]用JAVASCRIPT正则表达式限制文本字节数的代码

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

以下是引用片段:
/*  
 value: 值;  
 byteLength:数据库字节长度  
 title:字段中文名称  
 attribute:属性名称  
 使用方法说明:

添加 (1) onkeyup="limitLength(this.value,100,'名称','name')"  
          (2)  id="name" 或【struts标签】styleId="name"  
 注意:id名称和 attribute属性名称要一样

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

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

*/  


代码如下:

function limitLength(value, byteLength, title, attribute) {   
       var newvalue = value.replace(/[^\x00-\xff]/g, "**");   
       var length = newvalue.length;

//当填写的字节数小于设置的字节数   
      if (length * 1 <=byteLength * 1){   
            return;   
      }   
      var limitDate = newvalue.substr(0, byteLength);   
      var count = 0;   
      var limitvalue = "";   
     for (var i = 0; i < limitDate.length; i++) {   
             var flat = limitDate.substr(i, 1);   
            if (flat == "*") {   
                  count++;   
            }   
     }   
     var size = 0;   
     var istar = 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;   
}

(0)

相关推荐

  • [js]用JAVASCRIPT正则表达式限制文本字节数的代码

    做项目时自己写一段js给大家.关于文本限制字数的问题,在实际开发中经常用到;主要问题出现在对中文的限制,下面代码就解决关于限制字节数的校验问题;只要将此下代码保存到一个js文件中并引入到校验的页面中,便可使用!同时希望大家给与大力支持和宝贵意见,本人会在今后闲余之际,发表更多的好文章,谢谢!! 以下是引用片段: /*    value: 值:    byteLength:数据库字节长度    title:字段中文名称    attribute:属性名称    使用方法说明: 添加 (1) onk

  • JS jQuery使用正则表达式去空字符的简单实现代码

    1.正则去空字符串: var str1=" a b c "; var strtrim=str1.replace(/\s/g,""); 2.js去前后空字符串: var strtrim=str1.trim(); 3.jQuery去前后空字符串; var strtrim= $.trim(str1); 以上所述是小编给大家介绍的JS jQuery使用正则表达式去空字符的简单实现代码,希望对大家有所帮助,如果大家有任何疑问欢迎给我留言,小编会及时回复大家的!

  • 限制文本字节数js代码

    做项目时自己写一段js给大家.关于文本限制字数的问题,在实际开发中经常用到:主要问题出现在对中文的限制,下面代码就解决关于限制字节数的校验问题:只要将此下代码保存到一个js文件中并引入到校验的页面中,便可使用!同时希望大家给与大力支持和宝贵意见,本人会在今后闲余之际,发表更多的好文章,谢谢!! /*  value: 值:  byteLength:数据库字节长度  title:字段中文名称  attribute:属性名称  使用方法说明: 添加 (1) onkeyup="limitLength(t

  • form中限制文本字节数js代码

    /*  value: 值:  byteLength:数据库字节长度  title:字段中文名称  attribute:属性名称  使用方法说明: 添加 (1) onkeyup="limitLength(this.value,100,'名称','name')"           (2)  id="name" 或[struts标签]styleId="name"  注意:id名称和 attribute属性名称要一样 例子:<textarea  

  • 利用JS如何计算字符串所占字节数示例代码

    前言 在工作中是不是经常会遇到字符串,但是要求控制字节数的需求?因为很多时候数据库中对字节数有控制,所以在前端过程中就需要判断一下,今天我们来分享一下. 本文主要给大家介绍了关于JS计算字符串所占字节数的相关内容,分享出来供大家参考学习,下面话不多说了,来一起看看详细的介绍吧. 示例代码 /** * 计算字符串所占的内存字节数,默认使用UTF-8的编码方式计算,也可制定为UTF-16 * UTF-8 是一种可变长度的 Unicode 编码格式,使用一至四个字节为每个字符编码 * * 000000

  • textarea 控制输入字符字节数(示例代码)

    按字符数控制: 复制代码 代码如下: <textarea name="gbContent"  style="width: 500px; height: 200px;"             onkeyup="if(this.value.length>2000) this.value=this.value.substr(0,2000)"             onkeydown="if(this.value.length&

  • js获取提交的字符串的字节数

    方法1:  复制代码 代码如下: function getBytesCount(str) { var bytesCount = 0; if (str != null) { for (var i = 0; i < str.length; i++) { var c = str.charAt(i); if (/^[\u0000-\u00ff]$/.test(c)) { bytesCount += 1; } else { bytesCount += 2; } } } return bytesCount;

  • JS将光标聚焦在文本最后的实现代码

    复制代码 代码如下: <span style="font-family:Times New Roman;font-size:18px;"><script type="text/javascript"> //将光标聚焦在文本最后 function cursorEnd(){ var e = event.srcElement; var r = e.createTextRange(); r.moveStart('character',e.value.

  • c# 获取字符串的字节数的方法

    将字符串转换为ASCII编码数组,只要是中文字节码就是ASCII编码63即"?",所以可以由此来进行判断 复制代码 代码如下: class StringOP    {        /// <summary>        /// 获取中英文混排字符串的实际长度(字节数)        /// </summary>        /// <param name="str">要获取长度的字符串</param>      

  • js限制文本框输入长度两种限制方式(长度、字节数)

    功能/特点: 1.实时显示可输入的字数(字节数) 2.两种限制方式(长度.字节数) 3.中文输入法下可正常使用,无BUG 4.同一页面可以使用多个,相互不干扰 limit.js 复制代码 代码如下: function limit(){ var txtNote;//文本框 var txtLimit;//提示字数的input var limitCount;//限制的字数 var isbyte;//是否使用字节长度限制(1汉字=2字符) var txtlength;//到达限制时,字符串的长度 var

随机推荐