关于文本限制字数的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 相关文章推荐
Prototype Number对象 学习
Jul 19 Javascript
jquery tab插件精简版分享
Sep 10 Javascript
jquery使用$(element).is()来判断获取的tagName
Aug 24 Javascript
JS获取Table中td值的方法
Mar 19 Javascript
jQuery插件之Tocify动态节点目录菜单生成器附源码下载
Jan 08 Javascript
Bootstrap表单布局样式源代码
Jul 04 Javascript
微信小程序 教程之条件渲染
Oct 18 Javascript
如何在Angular.JS中接收并下载PDF
Nov 26 Javascript
easyUI combobox实现联动效果
Jan 17 Javascript
详解angularjs结合pagination插件实现分页功能
Feb 10 Javascript
JavaScript中一些特殊的字符运算
Aug 17 Javascript
基于vue 开发中出现警告问题去除方法
Jan 25 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
CI框架入门示例之数据库取数据完整实现方法
2014/11/05 PHP
PHP面向对象五大原则之里氏替换原则(LSP)详解
2018/04/08 PHP
PHP中常用的三种设计模式详解【单例模式、工厂模式、观察者模式】
2019/06/14 PHP
提高代码性能技巧谈—以创建千行表格为例
2006/07/01 Javascript
学习YUI.Ext 第四天--对话框Dialog的使用
2007/03/10 Javascript
ie和firefox不兼容的解决方法集合
2009/04/28 Javascript
jquery 学习笔记一
2010/04/07 Javascript
加随机数引入脚本不让浏览器读取缓存
2014/09/04 Javascript
再分享70+免费的jquery 图片滑块效果插件和教程
2014/12/15 Javascript
JS模拟键盘打字效果的方法
2015/08/05 Javascript
jQuery支持添加事件的日历特效代码分享(3种样式)
2015/08/24 Javascript
小心!AngularJS结合RequireJS做文件合并压缩的那些坑
2016/01/09 Javascript
JavaScript接口的实现三种方式(推荐)
2016/06/14 Javascript
JavaScript定时器实现的原理分析
2016/12/06 Javascript
javascript中BOM基础知识总结
2017/02/14 Javascript
jQuery的三种bind/One/Live/On事件绑定使用方法
2017/02/23 Javascript
基于pako.js实现gzip的压缩和解压功能示例
2017/06/13 Javascript
js实现Tab选项卡切换效果
2020/07/17 Javascript
JS实现计算小于非负数n的素数的数量算法示例
2019/02/26 Javascript
Python单例模式实例分析
2015/01/14 Python
举例讲解Python编程中对线程锁的使用
2016/07/12 Python
利用python为运维人员写一个监控脚本
2018/03/25 Python
python PIL/cv2/base64相互转换实例
2020/01/09 Python
浅谈ROC曲线的最佳阈值如何选取
2020/02/28 Python
django model 条件过滤 queryset.filter(**condtions)用法详解
2020/05/20 Python
python爬虫用request库处理cookie的实例讲解
2021/02/20 Python
李维斯法国官网:Levi’s法国
2019/07/13 全球购物
Java中各种基本数据类型的默认值都是什么
2016/12/22 面试题
程序员求职信
2014/04/16 职场文书
学校节能减排方案
2014/06/13 职场文书
2014广电局实施党的群众路线教育实践活动方案思想汇报
2014/09/22 职场文书
战略性融资合作协议书范本
2014/10/17 职场文书
市贸粮局召开党的群众路线教育实践活动总结大会新闻稿
2014/10/21 职场文书
大学生受助感言
2015/08/01 职场文书
简短清晨问候语
2015/11/10 职场文书
SQL Server实现分页方法介绍
2022/03/16 SQL Server