• js 编号生成器


    编号生成器

    前缀: 后缀:
    位数:
    范围: ~
    过滤字符: 多个使用,号分割


    代码如下:

    <!DOCTYPE html>
    <html>
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
    <title>编号生成器</title>
    </head>
    <body>
    
    <h1>编号生成器</h1>
    
    <div>
    前缀:<input id="txtBegin" type="text" value="" /> 后缀:<input id="txtEnd" type="text" value="" />
    <br />
    位数:<input id="numCount" type="number" value="5" />
    </div>
    
    <div style="margin:10px 0;">
    <label><input type="radio" name="a1" onclick="fnNum();" checked /> 连续数字</label>
    <label><input type="radio" name="a1" onclick="fnPwd();" /> 随机字符</label>
    </div>
    
    <div id="divNum">
    范围:<input id="numBegin" type="number" value="0" /> ~ <input id="numEnd" type="number" value="100" />
    <br />
    过滤字符:<input id="txtLimit" type="text" value="" /> 多个使用,号分割
    </div>
    
    <div id="divPwd" style="display:none;">
    <h3>0123456789 abcdefghijklmnopqrstuvwxyz ABCDEFGHIJKLMNOPQRSTUVWXYZ</h3>
    包含字符:<input id="txtChar" type="text" value="ABCDEFGHIJKLMNOPQRSTUVWXYZ0123456789" style="600px;" />
    <br />
    随机生成个数:<input id="txtCount" type="number" value="100" />
    </div>
    
    <input type="button" value="生成号码" onclick="run();" /> <span id="spanResult"></span>
    <hr />
    <textarea id="txtContent" style="600px; height:500px;">
    sss
    </textarea>
    
    <script>
    
    var boNum = true;
    function fnNum()
    {
        document.getElementById('divNum').style.display = 'block';
        document.getElementById('divPwd').style.display = 'none';
        boNum = true;
    }
    
    function fnPwd()
    {
        document.getElementById('divNum').style.display = 'none';
        document.getElementById('divPwd').style.display = 'block';
        boNum = false;
    }
    
    function run()
    {
        var str = '';
        var txtCount = parseInt(document.getElementById('txtCount').value);
        var txtBegin = document.getElementById('txtBegin').value;
        var txtEnd = document.getElementById('txtEnd').value;
        var txtChar = document.getElementById('txtChar').value;
        var numCount = parseInt(document.getElementById('numCount').value);
        var numBegin = parseInt(document.getElementById('numBegin').value);
        var numEnd = parseInt(document.getElementById('numEnd').value);
        var txtLimit = document.getElementById('txtLimit').value;
        
        var limit = txtLimit.split(',');
        if (txtLimit == '')
        {
            limit = [];
        }
        
        var count = 0;
        
        if (!boNum)
        {
            var list = [];
            for (var i=0; i<txtCount; i++)
            {
                var s = '';
                for (var j=0; j<numCount; j++)
                {
                    s += txtChar.charAt(Math.floor(Math.random() * txtChar.length));
                }
                
                var bo = false;
                for (var ii=0; ii<list.length; ii++)
                {
                    if (list[ii] == s)
                    {
                        bo = true;
                        alert(s);
                        break;
                    }
                }
                if (bo) continue;
                str += txtBegin + s + txtEnd + '
    ';
                list.push(s);
                count++;
            }
        }
        else
        {
            for (var i=numBegin; i<numEnd+1; i++)
            {
                var s = '' + i;
                s = (new Array( numCount - s.length + 1 ).join('0')) + s;
                
                var bo = false;
                for (var k=0; k<limit.length; k++)
                {
                    if (s.indexOf(limit[k]) != -1)
                    {
                        bo = true;
                        break;
                    }
                }
                if (bo) continue;
                str += txtBegin + s + txtEnd + '
    ';
                count++;
            }
        }
        
        document.getElementById('txtContent').value = str;
        document.getElementById('spanResult').innerHTML = '生成了 ' + count + '';
    }
    
    </script>
    
    </body></html>

    代码下载:http://files.cnblogs.com/zjfree/js_no.rar

  • 相关阅读:
    《当程序员的那些狗日日子》(六)继续熬夜学习的日子
    《当程序员的那些狗日日子》(四)喘过气来了
    《当程序员的那些狗日日子》(二)走上不归路
    《当程序员的那些狗日日子》(八)床上等你
    《当程序员的那些狗日日子》(一)毕业后的徘徊
    wince定时拍照功能(转)
    Excel公式找出某一列中是否有某值
    2010年到10月的流水帐
    不错的windows phone的博客
    将同一个表中的一个域更新到另外一个域的SQL文
  • 原文地址:https://www.cnblogs.com/zjfree/p/3527385.html
Copyright © 2020-2023  润新知