JQuery代码怎么把手机号或者qq号中间几位用*代替

$("#tel").html($("#tel").substring(0,3)+"****"+$("#tel").substring(8,11));这样写怎么不管用呢,请大神指教

第1个回答  2016-07-11

我写了方法  测试页面你copy去看看,重新引入下你自己的jquery:

<!DOCTYPE html>
<html>
    <head>
        <meta charset="UTF-8">
        <title></title>
        <script type="text/javascript" src="js/jquery.js" ></script>
        <script>
            $(function(){
                console.info(replaceStr('13512345678',4,4));//135****5678
                console.info(replaceStr('13512345678',8,4));//1351234****
            });
            
            //使用*替换字符串中间的字符   str:要替换的字符串  ;star 从第几位开始替换 ;len:替换多少位  
            //注意star 应该大于等于1   len+star 应小于等字符串长度 ,这里不在方法中验证了
            function replaceStr(str,start,len){
                var star = '';
                for(var i=0;i<len;i++) {
                    star += '*';
                }
                return str.substring(0,start-1) + star + str.substring(start+len-1, str.length);
            }
            
        </script>
    </head>
        
    <body>
        
    </body>
</html>

第2个回答  2016-07-20
"13112345678".replace(/(1\d{2})\d{4}(\d{4})/, "$1****$2");
//电话和QQ一样的原理,用正则匹配然后替换

 

在这里强烈鄙视一下LZ,采纳一个牛头不对马嘴的答案,为自己以及下面两位朋友抱不平。

第3个回答  2016-07-03
你这样写不管用是因为$("#tel").val()才行 只是$("#tel")是取节点 加val()才是取值
第4个回答  2016-07-04
这个是用php 或asp来实现的吧
能把问题说的更详细点吧,比如用的什么cms本回答被提问者采纳
相似回答
大家正在搜