JS字符串长度判断,超出进行自动截取的实例(支持中文)


Posted in Javascript onMarch 06, 2017

今天一个小弟问我的问题,在文本框中输入字符,如果超出指定长度,就把它截取,要求中文等于两个字符的长度,我找一下资料,把这个功能实现了,

下面是JS代码:

<html>
<script src="http://3water.com/script/jquery.js" type="text/javascript"></script>

<body>
  <input type="text" name="username" />
</body>
<script type="text/ecmascript">

  
  var GetLength = function (str) {
    ///<summary>获得字符串实际长度,中文2,英文1</summary>
    ///<param name="str">要获得长度的字符串</param>
    var realLength = 0, len = str.length, charCode = -1;
    for (var i = 0; i < len; i++) {
      charCode = str.charCodeAt(i);
      if (charCode >= 0 && charCode <= 128) realLength += 1;
      else realLength += 2;
    }
    return realLength;
  };

  //js截取字符串,中英文都能用 
  //如果给定的字符串大于指定长度,截取指定长度返回,否者返回源字符串。 
  //字符串,长度 

  /** 
   * js截取字符串,中英文都能用 
   * @param str:需要截取的字符串 
   * @param len: 需要截取的长度 
   */
  function cutstr(str, len) {
    var str_length = 0;
    var str_len = 0;
    str_cut = new String();
    str_len = str.length;
    for (var i = 0; i < str_len; i++) {
      a = str.charAt(i);
      str_length++;
      if (escape(a).length > 4) {
        //中文字符的长度经编码之后大于4 
        str_length++;
      }
      str_cut = str_cut.concat(a);
      if (str_length >= len) {
        str_cut = str_cut.concat("...");
        return str_cut;
      }
    }
    //如果给定字符串小于指定长度,则返回源字符串; 
    if (str_length < len) {
      return str;
    }
  }$(function () { 
   $("input[name=username]").bind('keyup', function () {
   if (GetLength($(this).val()) > 10) { 
    $(this).val(cutstr($(this).val(), 10)); 
    return; 
   } 
 }); 
}); 
</script> 
</html>

效果如图:

JS字符串长度判断,超出进行自动截取的实例(支持中文)

以上这篇JS字符串长度判断,超出进行自动截取的实例(支持中文)就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
JQuery浮动DIV提示信息并自动隐藏的代码
Aug 29 Javascript
Checbox的操作含已选、未选及判断代码
Nov 07 Javascript
js/jQuery简单实现选项卡功能
Jan 02 Javascript
jquery.post用法示例代码
Jan 03 Javascript
jquery选择器排除某个DOM元素的方法(实例演示)
Apr 25 Javascript
两款JS脚本判断手机浏览器类型跳转WAP手机网站
Oct 16 Javascript
解决JS无法调用Controller问题的方法
Dec 31 Javascript
js获取时间精确到秒(年月日)
Mar 16 Javascript
js闭包引起的事件注册问题介绍
Mar 29 Javascript
Javascript实现前端简单的路由实例
Sep 11 Javascript
微信浏览器左上角返回按钮监听的实现
Mar 04 Javascript
echarts柱状图背景重叠组合而非并列的实现代码
Dec 10 Javascript
Bootstrap导航简单实现代码
Mar 06 #Javascript
Bootstrap栅格系统简单实现代码
Mar 06 #Javascript
javascript DOM的详解及实例代码
Mar 06 #Javascript
vue + socket.io实现一个简易聊天室示例代码
Mar 06 #Javascript
EasyUI为Numberbox添加blur事件的方法
Mar 05 #Javascript
Web开发中客户端的跳转与服务器端的跳转的区别
Mar 05 #Javascript
js获取元素下的第一级子元素的方法(推荐)
Mar 05 #Javascript
You might like
php curl模拟post请求小实例
2013/11/13 PHP
php实现cc攻击防御和防止快速刷新页面示例
2014/02/13 PHP
php读取远程gzip压缩网页的方法
2014/12/29 PHP
PHP常用的小程序代码段
2015/11/14 PHP
jQuery 过滤not()与filter()实例代码
2012/05/10 Javascript
jQuery弹出(alert)select选择的值
2013/04/21 Javascript
NodeJS中Buffer模块详解
2015/01/07 NodeJs
jQuery实现购物车计算价格功能的方法
2015/03/25 Javascript
基于JavaScript实现一定时间后去执行一个函数
2015/12/14 Javascript
详解Bootstrap按钮
2016/01/04 Javascript
Vue2.0利用vue-resource上传文件到七牛的实例代码
2017/07/28 Javascript
详解让sublime text3支持Vue语法高亮显示的示例
2017/09/29 Javascript
js中apply与call简单用法详解
2017/11/06 Javascript
微信小程序模板(template)使用详解
2018/01/31 Javascript
详解在HTTPS 项目中使用百度地图 API
2019/04/26 Javascript
Vue+element-ui添加自定义右键菜单的方法示例
2020/12/08 Vue.js
Python实现的tab文件操作类分享
2014/11/20 Python
python魔法方法-属性访问控制详解
2016/07/25 Python
Python基于回溯法子集树模板解决全排列问题示例
2017/09/07 Python
Python闭包之返回函数的函数用法示例
2018/01/27 Python
Python使用pyserial进行串口通信的实例
2019/07/02 Python
Python获取当前脚本文件夹(Script)的绝对路径方法代码
2019/08/27 Python
关于django 1.10 CSRF验证失败的解决方法
2019/08/31 Python
Python装饰器使用你可能不知道的几种姿势
2019/10/25 Python
Python post请求实现代码实例
2020/02/28 Python
Python无损压缩图片的示例代码
2020/08/06 Python
初中生个人学习的自我评价
2013/12/04 职场文书
预备党员承诺书
2014/03/25 职场文书
给老婆的保证书范文
2014/04/28 职场文书
让生命充满爱演讲稿
2014/05/10 职场文书
公司员工活动策划方案
2014/08/20 职场文书
幼儿教师师德师风演讲稿
2014/08/22 职场文书
教师工作总结范文2014
2014/11/10 职场文书
接收函
2019/04/22 职场文书
opencv用VS2013调试时用Image Watch插件查看图片
2021/07/26 Python
RestTemplate如何通过HTTP Basic Auth认证示例说明
2022/03/17 Java/Android