JS利用正則表達(dá)式實現(xiàn)簡單的密碼強弱判斷實例
實現(xiàn)功能:
1、輸入字符要在6-16之間;小于6個字符或大于16個字符時給予提示,而且強弱不顯示;為0時,也給予提示;
2、當(dāng)密碼在6-16個字符之間時,如果密碼全是數(shù)字或全是字母,顯示弱;密碼是數(shù)字與字母的組合,則顯示強;若為字母數(shù)字加下劃線,則為強;
效果圖如下:
代碼如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <title></title> <style> .mm-body{ position: relative; height: 100px; width: 450px; background-color: wheat; } .mm-top{ height:35px; width: 450px; background-color: wheat; } .mm-sr{ height:30px; width: 100px; float: left; text-align: center; line-height: 30px; } #mm-pwd{ float: left; height:25px; background-color: ghostwhite; border-radius: 5px; width: 150px; } .mm-btm{ height: 40px; width: 140px; position: relative; margin-left: 110px; } #lv1,#lv2,#lv3{ height: 30px; width: 40px; border-top: 4px solid gainsboro; margin-left: 3px; float: left; font-size: 18px; text-align: center; line-height: 25px; } </style> </head> <body> <div class="mm-body"> <div class="mm-top"> <span class="mm-sr">請輸入密碼:</span> <form method="get" action="data.html" > <input type="password" id="mm-pwd" onkeyup="show()"/> </form> <span id="mm-pd"style="color: red; font-size: 12px; line-height: 30px;"></span> </div> <div class="mm-btm"> <div id="lv1">弱</div> <div id="lv2">中</div> <div id="lv3">強</div> <!--強度判斷也可用表格做 <table border="0px" cellpadding="0px" cellspacing="1px" > <tr height="20px" > <td width="40px" id="lv1" style="border-top: 3px solid darkgrey;">弱</td> <td width="40px" id="lv2" style="border-top: 3px solid darkgrey;">中</td> <td width="40px" id="lv3" style="border-top: 3px solid darkgrey;">強</td> </tr> </table>--> </div> </div> </body> </html> <script language="JavaScript"> function show(){ var a=document.getElementById("mm-pwd").value; if(a.length==0){ document.getElementById("mm-pd").innerHTML="密碼不能為空!"; } else if(a.length<6){ document.getElementById("mm-pd").innerHTML="密碼長度小于6個字符!"; } else if(a.length>=6&&a.length<=16){ document.getElementById("mm-pd").innerHTML=""; var reg=/^[0-9]{6,16}$|^[a-zA-Z]{6,16}$/; //全是數(shù)字或全是字母 6-16個字符 var reg1=/^[A-Za-z0-9]{6,16}$/; //數(shù)字、26個英文字母 6-16個字符 var reg2=/^\w{6,16}$/; // 由數(shù)字、26個英文字母或者下劃線組成的字符串 6-16個字符 if(a.match(reg)){ document.getElementById("lv1").style.borderTopColor="red"; } else if(a.match(reg1)){ document.getElementById("lv1").style.borderTopColor="red"; document.getElementById("lv2").style.borderTopColor="yellow"; } else if(a.match(reg2)){ document.getElementById("lv1").style.borderTopColor="red"; document.getElementById("lv2").style.borderTopColor="yellow"; document.getElementById("lv3").style.borderTopColor="green"; } } else if(a.length>16){ document.getElementById("mm-pd").innerHTML="密碼長度大于16個字符!"; document.getElementById("lv1").style.borderTopColor="gainsboro"; document.getElementById("lv2").style.borderTopColor="gainsboro"; document.getElementById("lv3").style.borderTopColor="gainsboro"; } } </script>
總結(jié)
以上就是這篇文章的全部內(nèi)容了,希望本文的內(nèi)容對大家的學(xué)習(xí)或者工作能帶來一定的幫助,如果有疑問大家可以留言交流,謝謝大家對腳本之家的支持。
相關(guān)文章
javascript 動態(tài)加載 css 方法總結(jié)
有時候我們在設(shè)計網(wǎng)頁的時候想動態(tài)的加載css文件,并不是將css文件寫死在頁面中,這時就可以使用下面方法.2009-07-07TypeScript模塊與命名空間的關(guān)系和使用方法
在TypeScript中就像在EC5中一樣,任何包含頂級import或export的文件都被認(rèn)為是一個模塊,下面這篇文章主要給大家介紹了關(guān)于如何在TypeScript使用模塊與命名空間以及注意事項的相關(guān)資料,需要的朋友可以參考下2023-03-03再次更新!MSClass (Class Of Marquee Scroll通用不間斷滾動JS封裝類 Ver 1.6)
再次更新!MSClass (Class Of Marquee Scroll通用不間斷滾動JS封裝類 Ver 1.6)...2007-02-02