文本限制字数的问题,在实际开发中经常用到;主要问题出现在对中文的限制,下面代码就解决关于限制字节数的校验问题

以下是引用片段:
/*  value: 值;  byteLength:数据库字节长度  title:字段中文名称  attribute:属性名称  使用方法说明:  添加 (1) οnkeyup="limitLength(this.value,100,'名称','name')"  (2)  id="name" 或【struts标签】styleId="name"  id名称和 attribute属性名称要一样  例子:<textarea  name="explain" id="explain" οnkeyup="limitLength(value,5,'语义说明','explain')" >   或
<input type="text"   name="explain"  id="explain" οnkeyup="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;
} 

本文转自Orson博客园博客,原文链接:http://www.cnblogs.com/java-class/archive/2013/04/28/3048342.html,如需转载请自行联系原作者

Javascript 限制文本字节数相关推荐

  1. html js脚本限制 正则,[js]用JAVASCRIPT正则表达式限制文本字节数的代码

    做项目时自己写一段js给大家.关于文本限制字数的问题,在实际开发中经常用到;主要问题出现在对中文的限制,下面代码就解决关于限制字节数的校验问题;只要将此下代码保存到一个js文件中并引入到校验的页面中, ...

  2. Javascript 获取字符串字节数的多种方法

    第一种:(通过String对象的charCodeAt方法) String.prototype.getBytesLength = function() { var length = 0; for(i = ...

  3. php文本框限制字节,js限制文本框输入长度两种限制方式(长度、字节数)_基础知识...

    功能/特点: 1.实时显示可输入的字数(字节数) 2.两种限制方式(长度.字节数) 3.中文输入法下可正常使用,无BUG 4.同一页面可以使用多个,相互不干扰 limit.js function li ...

  4. c语言中大写英文字母所占字节,Java中字符编码和字符串所占字节数 .

    首 先,java中的一个char是2个字节.java采用unicode,2个字节来表示一个字符,这点与C语言中不同,C语言中采用ASCII,在大多数 系统中,一个char通常占1个字节,但是在0~12 ...

  5. wav文件头字节数和文件实际字节不一致_18道MySQL经典面试题及答案,8分钟看完,你会有不一样的收获...

    1.MySQL的复制原理以及流程 (1).复制基本原理流程 1. 主:binlog线程--记录下所有改变了数据库数据的语句,放进master上的binlog中: 2. 从:io线程--在使用start ...

  6. (C#)为 TextBox 控件增加一个限制最大字节数的属性

    一直以来都知道,在 sql server 中,varchar类型是按字节计算的.例如 varchar(50)  可以存储50个英文字符,但只能存储25个中文字符(一个中文字符2个字节).改为 nvar ...

  7. python os write_Python 3:写入方法与os.write返回的字节数

    我想创建一个包含许多"页面"的文本文件,并将每个页面的字节偏移记录在一个单独的文件中.为此,我将字符串打印到主输出文件并使用bytes_written = file.write(s ...

  8. 字节数与字符数mysql_mysql 数值与字符类型 长度梳理

    上述表格中的数值类型都是定长的,也就是说,无论你存的数值是多少,多大或者多小,占用的存储字节大小都是固定的.例如,之前设置的int(1),虽然M值是1个字符,但是它所占用的空间大小永远都是4个字节的大 ...

  9. js获取字符串字符数和字节数,注意:区分字符串字符数和字节数(编程环境UTF-8的情形)

    1.字符串字符数: 直接str.length即可获取 2.字符串字节数: js获取字符串字节长度小技巧:https://blog.csdn.net/likun952345407/article/det ...

最新文章

  1. 通过RS232发送和接收短信(二)
  2. app测试流程和重点_APP开发测试流程是怎么样的?
  3. WebSphere Application Server v6中的问题诊断以及日志策略
  4. android释放焦点_Android videoview抢占焦点的处理方法
  5. poj 2299 (归并排序)
  6. 第 4 节:前端面试指南 — JavaScript篇
  7. 第一周周冠军带你解析赛题,尝试广告算法新思路
  8. java name_Java枚举name()方法及示例
  9. how to install tensorflow-gpu==1.12.0
  10. Hadoop 实现kmeans 算法
  11. 链表c语言代码题库排坐标,[编程入门]链表合并-题解(C语言代码)
  12. extjs4.0视频教程
  13. 数据库左连接,右连接区别解析
  14. html吃豆豆游戏代码,HTML5 Canvas 来回简单版吃豆豆
  15. 信息学奥赛一本通 1296:开餐馆 | OpenJudge NOI 2.6 6045:开餐馆
  16. Batch Normalization解析
  17. Swift 代码添加约束
  18. 上海计算机学院网上报名,上海市学历积分报名网,成年人考试网上报名
  19. Mac办公软件office等安装包
  20. 查看指定端口的占用情况

热门文章

  1. videoview全屏播放
  2. 深入浅出Android系统启动流程
  3. JavaScript语言基础2
  4. UIView 的布局与绘制显示相关方法调用时机
  5. 硬币游戏 (博弈入门)
  6. 线程间通信共享变量和queue
  7. Java集合框架(1)
  8. django-request对象
  9. Java 定义字符串数组
  10. 构建之法 第6~7章读后感和对Scrum的理解