首页WEB开发脚本代码 → 限制文本字节数js代码

限制文本字节数js代码

日期:2007-5-21 09:39:15 出处:其他转载 作者:不详 人气:
/*
  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 ;
}

关于本站 | 帮 助 | 广告服务 | 版权声明 | 业务合作 | 捐助本站 | 软件发布 | 联系我们
77资源下载 www.77zy.com ©2007-2008 版权所有
备案编号:赣ICP备07002641号  QQ:674648476