jQuery实现字符串按指定长度加入特定内容的方法

本文实例讲述了jQuery实现字符串按指定长度加入特定内容的方法。分享给大家供大家参考。具体分析如下:

最近的一个项目中需要将手机号码按一定长度用标识符隔开,便于阅读,网上找了一会发现没有合适的代码于是就自己手写了一个函数,可以按指定长度往字符串中插入分隔符,有需要的朋友可以拿去。

var split_str=false;
function insert_flg(str,flg,sn){
  str=str.replace(new RegExp(flg,"g"),"");
  var newstr="";
  var tmp;
  var len=str.length;//长度
  var num=len/sn;//分段数
  var start;
  var end;
  //len%sn //能否完整分段 0:是
  for(i=0;i<num;i+=1){
    if (len%sn!=0){//不能完整分段
      start=i*sn-1;
      end=i*sn+(sn-1);
    }else{
      start=i*sn;
      end=(i+1)*sn;
    }
    start=start<0?0:start;
    if (end<=len){
      tmp=str.substring(start,end);
    }
    newstr+=(end>=len)?tmp:tmp+flg;
  }
  split_str=newstr;
  return newstr;
}
$(function(){
  var phone=$("#phone");
  phone.blur(function(){//失去焦点时触发
    var cont=phone.val();
    cont=jQuery.trim(cont);
    var str_p='-';//拆分符号
    var s=4;//每段长度
    if (!cont||split_str==cont) return false;
 //焦点再次离开时检查内容有无变化
    phone.val(insert_flg(cont,str_p,s));
    })
})

希望本文所述对大家的jQuery程序设计有所帮助。

声明:本文内容来源于网络,版权归原作者所有,内容由互联网用户自发贡献自行上传,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任。如果您发现有涉嫌版权的内容,欢迎发送邮件至:notice#nhooo.com(发邮件时,请将#更换为@)进行举报,并提供相关证据,一经查实,本站将立刻删除涉嫌侵权内容。