本文實例講述了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="width: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="width:600px; height:500px;"></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 + '/r/n'; 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 + '/r/n'; count++; } } document.getElementById('txtContent').value = str; document.getElementById('spanResult').innerHTML = '生成了 ' + count + ' 個';}</script></body></html>
完整實例代碼點擊此處本站下載。
更多關于JavaScript相關內容感興趣的讀者可查看本站專題:《JavaScript切換特效與技巧總結》、《JavaScript查找算法技巧總結》、《JavaScript動畫特效與技巧匯總》、《JavaScript錯誤與調試技巧總結》、《JavaScript數據結構與算法技巧總結》、《JavaScript遍歷算法與技巧總結》及《JavaScript數學運算用法總結》
希望本文所述對大家JavaScript程序設計有所幫助。
新聞熱點
疑難解答