关于文本限制字数的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 相关文章推荐
网站被黑的假象--ARP欺骗之页面中加入一段js
May 16 Javascript
List Information About the Binary Files Used by an Application
Jun 18 Javascript
在js(jquery)中获得文本框焦点和失去焦点的方法
Dec 04 Javascript
jQuery学习笔记之jQuery.extend(),jQuery.fn.extend()分析
Jun 09 Javascript
JS的location.href跳出框架打开新页面的方法
Sep 04 Javascript
AngularJS基础学习笔记之控制器
May 10 Javascript
jquery实现倒计时效果
Dec 14 Javascript
基于Bootstrap实现tab标签切换效果
Apr 15 Javascript
AngularJs  E2E Testing 详解
Sep 02 Javascript
Angular开发者指南之入门介绍
Mar 05 Javascript
AngularJS自定义过滤器用法经典实例总结
May 17 Javascript
js贪心算法 钱币找零问题代码实例
Sep 11 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
Pain 全世界最小最简单的PHP模板引擎 (普通版)
2011/10/23 PHP
使用PHP强制下载PDF文件示例
2014/01/17 PHP
一个基于phpQuery的php通用采集类分享
2014/04/09 PHP
PHP下载远程文件到本地存储的方法
2015/03/24 PHP
Ajax PHP JavaScript MySQL实现简易无刷新在线聊天室
2016/08/17 PHP
Laravel 实现关系模型取出需要的字段
2019/10/10 PHP
JavaScript更改class和id的方法
2008/10/10 Javascript
JavaScript 快捷键设置实现代码
2009/03/13 Javascript
jQuery 打造动态渐变按钮 详细图文教程
2010/04/25 Javascript
Jquery遍历checkbox获取选中项value值的方法
2014/02/13 Javascript
node.js中的fs.lstatSync方法使用说明
2014/12/16 Javascript
js实现获取两个日期之间所有日期的方法
2016/06/17 Javascript
很酷的星级评分系统原生JS实现
2016/08/25 Javascript
jQuery实现别踩白块儿网页版小游戏
2017/01/18 Javascript
Angular 4 指令快速入门教程
2017/06/07 Javascript
ionic3 懒加载
2017/08/16 Javascript
JavaScript解析JSON数据示例
2019/07/16 Javascript
详解vue中$nextTick和$forceUpdate的用法
2019/12/11 Javascript
JavaScript设计模型Iterator实例解析
2020/01/22 Javascript
JavaScript对象属性操作实例解析
2020/02/04 Javascript
Node.js中出现未捕获异常的处理方法
2020/06/29 Javascript
Python中Random和Math模块学习笔记
2015/05/18 Python
Python的装饰器模式与面向切面编程详解
2015/06/21 Python
使用Python求解最大公约数的实现方法
2015/08/20 Python
Python 多线程抓取图片效率对比
2016/02/27 Python
Python3实现的画图及加载图片动画效果示例
2018/01/19 Python
在python中pandas的series合并方法
2018/11/12 Python
对pycharm 修改程序运行所需内存详解
2018/12/03 Python
python爬虫模块URL管理器模块用法解析
2020/02/03 Python
pycharm Tab键设置成4个空格的操作
2021/02/26 Python
证券期货行业个人的自我评价
2013/12/26 职场文书
石油工程专业毕业生求职信
2014/04/13 职场文书
学校关爱留守儿童活动方案
2014/08/27 职场文书
教师节学生演讲稿
2014/09/03 职场文书
对象析构函数__del__在Python中何时使用
2022/03/22 Python
Vue.Draggable实现交换位置
2022/04/07 Vue.js