关于文本限制字数的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 相关文章推荐
js类的静态属性和实例属性的理解
Oct 01 Javascript
模仿JQuery sortable效果 代码有错但值得看看
Nov 05 Javascript
js escape,unescape解决中文乱码问题的方法
May 26 Javascript
juqery 学习之四 筛选查找
Nov 30 Javascript
jquery 取子节点及当前节点属性值的方法
Aug 24 Javascript
Javascript让DEDECMS告别手写Tag
Sep 01 Javascript
jQuery中die()方法用法实例
Jan 19 Javascript
JQuery查找DOM节点的方法
Jun 11 Javascript
javascript排序函数实现数字排序
Jun 26 Javascript
JavaScript“尽快失败”的原则实例详解
Oct 08 Javascript
js实现水平滚动菜单导航
Jul 21 Javascript
Vue解决echart在element的tab切换时显示不正确问题
Aug 03 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 第二节 数据类型之转换
2012/04/28 PHP
CI(CodeIgniter)框架视图中加载视图的方法
2017/03/24 PHP
AJAX的使用方法详解
2017/04/29 PHP
JavaScript 获取事件对象的注意点
2009/07/29 Javascript
jquery实现动态画圆
2014/12/04 Javascript
jquery制作 随机弹跳的小球特效
2015/02/01 Javascript
浅析在javascript中创建对象的各种模式
2016/05/06 Javascript
微信小程序 progress组件详解及实例代码
2016/10/25 Javascript
使用Math.max,Math.min获取数组中的最值实例
2017/04/25 Javascript
Nodejs读取文件时相对路径的正确写法(使用fs模块)
2017/04/27 NodeJs
php简单数据库操作类的封装
2017/06/08 Javascript
浅谈Webpack自动化构建实践指南
2017/12/18 Javascript
微信小程序使用swiper组件实现类3D轮播图
2018/08/29 Javascript
element vue validate验证名称重复 输入框与后台重复验证 特殊字符 字符长度 及注意事项小结【实例代码】
2018/11/20 Javascript
vue实现按需加载组件及异步组件功能
2019/05/27 Javascript
vue中@change兼容问题详解
2019/10/25 Javascript
深入浅析golang zap 日志库使用(含文件切割、分级别存储和全局使用等)
2020/02/19 Javascript
Vue管理系统前端之组件拆分封装详解
2020/08/23 Javascript
js实现飞机大战小游戏
2020/08/26 Javascript
[01:07]2015国际邀请赛 中国区预选赛精彩回顾
2015/06/15 DOTA
[02:04]2018DOTA2亚洲邀请赛Secret赛前采访
2018/04/03 DOTA
Python中还原JavaScript的escape函数编码后字符串的方法
2014/08/22 Python
Python闭包之返回函数的函数用法示例
2018/01/27 Python
Python实现的tcp端口检测操作示例
2018/07/24 Python
Pandas的read_csv函数参数分析详解
2019/07/02 Python
通过字符串导入 Python 模块的方法详解
2019/10/27 Python
python re.match()用法相关示例
2021/01/27 Python
CSS+jQuery+PHP+MySQL实现的在线答题功能
2015/04/25 HTML / CSS
海淘零差价,宝贝全球购: 宝贝格子
2016/08/24 全球购物
现代生活方式的家具和装饰:Dot & Bo
2018/12/26 全球购物
如何利用find命令查找文件
2015/02/07 面试题
质量月口号
2014/06/20 职场文书
2014学习优秀共产党员先进事迹思想汇报
2014/09/14 职场文书
回门宴新娘答谢词
2015/09/29 职场文书
只用40行Python代码就能写出pdf转word小工具
2021/05/31 Python
SQL Server2019数据库备份与还原脚本,数据库可批量备份
2021/11/20 SQL Server