关于文本限制字数的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 相关文章推荐
JavaScript之HTMLCollection接口代码
Apr 27 Javascript
学习JavaScript设计模式(策略模式)
Nov 26 Javascript
Javascript基础知识盲点总结之函数
May 15 Javascript
jQuery tagsinput在h5邮件客户端中应用详解
Sep 26 Javascript
JS实现的验证身份证及获取地区功能示例
Jan 16 Javascript
详解动画插件wow.js的使用方法
Sep 13 Javascript
JS实现静态页面搜索并高亮显示功能完整示例
Sep 19 Javascript
利用vue + element实现表格分页和前端搜索的方法
Dec 25 Javascript
使用typescript开发angular模块并发布npm包
Apr 19 Javascript
Vue2实时监听表单变化的示例讲解
Aug 30 Javascript
详解关于element级联选择器数据回显问题
Feb 20 Javascript
Vue项目vscode 安装eslint插件的方法(代码自动修复)
Apr 15 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
给多个地址发邮件的类
2006/10/09 PHP
批量修改RAR文件注释的php代码
2010/11/20 PHP
PHP显示今天、今月、上月、今年的起点/终点时间戳的代码
2011/05/25 PHP
php whois查询API制作方法
2011/06/23 PHP
PHP 使用header函数设置HTTP头的示例解析 表头
2013/06/17 PHP
php无限极分类递归排序实现方法
2014/11/11 PHP
php使用CURL不依赖COOKIEJAR获取COOKIE的方法
2015/06/17 PHP
php抛出异常与捕捉特定类型的异常详解
2016/10/26 PHP
PHP将身份证正反面两张照片合成一张图片的代码
2017/04/08 PHP
php头像上传预览实例代码
2017/05/02 PHP
php str_replace替换指定次数的方法详解
2017/05/05 PHP
让iframe子窗体取父窗体地址栏参数(querystring)
2009/10/13 Javascript
JavaScript学习笔记(十七)js 优化
2010/02/04 Javascript
js opener的使用详解
2014/01/11 Javascript
详解JavaScript的AngularJS框架中的表达式与指令
2016/03/05 Javascript
Bootstrap3制作自己的导航栏
2016/05/12 Javascript
Node.js使用Express.Router的方法
2017/11/14 Javascript
浅谈JsonObject中的key-value数据解析排序问题
2017/12/06 Javascript
js防抖和节流的深入讲解
2018/12/06 Javascript
Nodejs处理异常操作示例
2018/12/25 NodeJs
js逆向解密之网络爬虫
2019/05/30 Javascript
Vue使用mixin分发组件的可复用功能
2019/09/01 Javascript
详解Vue中CSS样式穿透问题
2019/09/12 Javascript
在VUE中实现文件下载并判断状态的方法
2019/11/08 Javascript
jupyter安装小结
2016/03/13 Python
python常用函数详解
2016/09/13 Python
Pycharm 设置自定义背景颜色的图文教程
2018/05/23 Python
基于Python的OCR实现示例
2020/04/03 Python
美国大城市最热门旅游景点门票:CityPASS
2016/12/16 全球购物
Desigual英国官网:在线购买原创服装
2018/03/09 全球购物
FC-Moto瑞典:欧洲最大的摩托车服装和头盔商店之一
2018/11/27 全球购物
June Jacobs尊积帕官网:知名的spa水疗护肤品牌
2019/03/21 全球购物
土木工程应届生求职信
2013/10/31 职场文书
119消防日活动总结
2014/08/29 职场文书
工作态度不端正检讨书
2014/10/04 职场文书
加薪申请报告范本
2015/05/15 职场文书