关于文本限制字数的js代码


Posted in Javascript onApril 02, 2007

做项目时自己写一段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;
}

Javascript 相关文章推荐
WebGame《逆转裁判》完整版 代码下载(1月24日更新)
Jan 29 Javascript
Gird事件机制初级读本
Mar 10 Javascript
才发现的超链接js导致网页中GIF动画停止的解决方法
Nov 02 Javascript
兼容多浏览器的字幕特效Marquee的通用js类
Jul 20 Javascript
JavaScript 设计模式 安全沙箱模式
Sep 24 Javascript
Extjs 4.x 得到form CheckBox 复选框的值
May 04 Javascript
jquery获取选中的文本和值的方法
Jul 08 Javascript
Node.js事件循环(Event Loop)和线程池详解
Jan 28 Javascript
JQuery中两个ul标签的li互相移动实现方法
May 18 Javascript
基于vue cli重构多页面脚手架过程详解
Jan 23 Javascript
jQuery UI实现动画效果代码分享
Aug 19 jQuery
js实现图片无缝循环轮播
Oct 28 Javascript
屏蔽鼠标右键、Ctrl+n、shift+F10、F5刷新、退格键 的javascript代码
Apr 01 #Javascript
Javascript中的常见排序算法
Mar 27 #Javascript
一段多浏览器的&quot;复制到剪贴板&quot;javascript代码
Mar 27 #Javascript
CSDN轮换广告图片轮换效果
Mar 27 #Javascript
[原创]提供复制本站内容时出现,该文章转自脚本之家等字样的js代码
Mar 27 #Javascript
驱动事件的addEvent.js代码
Mar 27 #Javascript
网页自动刷新,不产生嗒嗒声的一个解决方法
Mar 27 #Javascript
You might like
php调用mysql数据 dbclass类
2011/05/07 PHP
PHP静态调用非静态方法的应用分析
2013/05/02 PHP
PHP入门教程之PHP操作MySQL的方法分析
2016/09/11 PHP
PHP7新特性
2021/03/09 PHP
基于jQuery的仿flash的广告轮播代码
2010/11/04 Javascript
各浏览器对link标签onload/onreadystatechange事件支持的差异分析
2011/04/27 Javascript
Javascript 面向对象(二)封装代码
2012/05/23 Javascript
Jquery Uploadify多文件上传带进度条且传递自己的参数
2013/08/28 Javascript
jQuery遍历Form示例代码
2013/09/03 Javascript
jQuery使用after()方法在元素后面添加多项内容的方法
2015/03/26 Javascript
javascript实现鼠标拖动改变层大小的方法
2015/04/30 Javascript
JS实现当前页居中分页效果的方法
2015/06/18 Javascript
SpringMVC框架下JQuery传递并解析Json格式的数据是如何实现的
2015/12/10 Javascript
利用jQuery实现WordPress中@的ID悬浮显示评论内容
2015/12/11 Javascript
设计模式中的组合模式在JavaScript程序构建中的使用
2016/05/18 Javascript
JS实现保留n位小数的四舍五入问题示例
2016/08/03 Javascript
JavaScript数组复制详解
2017/02/02 Javascript
template.js前端模板引擎使用详解
2017/10/10 Javascript
利用Node.js批量抓取高清妹子图片实例教程
2018/08/02 Javascript
浅谈Vue.js组件(二)
2019/04/09 Javascript
Javascript通过控制类名更改样式
2019/05/24 Javascript
解决vue watch数据的方法被调用了两次的问题
2020/11/07 Javascript
详解Java中String JSONObject JSONArray List转换
2020/11/13 Javascript
python在Windows8下获取本机ip地址的方法
2015/03/14 Python
Python装饰器原理与用法分析
2018/04/30 Python
python BlockingScheduler定时任务及其他方式的实现
2019/09/19 Python
Django框架下静态模板的继承操作示例
2019/11/08 Python
TensorFlow设置日志级别的几种方式小结
2020/02/04 Python
Python安装并操作redis实现流程详解
2020/10/13 Python
暇步士官网:Hush Puppies
2016/09/22 全球购物
德国网上宠物店:Zoobio
2018/05/23 全球购物
香港最大的洋酒零售连锁店:屈臣氏酒窖(Watson’s Wine)
2018/12/10 全球购物
开门红主持词
2014/04/02 职场文书
理想演讲稿范文
2014/05/21 职场文书
总经理任命书范本
2014/06/05 职场文书
信息技术研修心得体会
2016/01/08 职场文书