請輸入電話號碼:<input name="" type="text" id="telphone" value=""/><br /> 請輸入郵箱地址:<input name="" type="text" id="mail" value="" /><br /> 請第一次輸入密碼:<input name="" type="text" id="mima1" value="" /><br /> 請第二次輸入密碼:<input name="" type="text" id="mima2" value="" /><br /> 檢測密碼是否合法:<input name="" type="text" id="secury_mima" value="" /><br /> <input name="" type="button" onclick="check();" value="開始檢測" /> <br /> <br /> <br /> <div style="background:#000" id="checktel"></div> <div style="background:#000" id="checkmail"></div> <div style="background:#000" id="checkrepsw"></div> <div style="background:#000" id="checkpsw"></div> <div style="background:#000" id="checkusr"></div> </body> <script> var xmlHttp; //這個不解釋 var checkpsw; //全局變量,用來密碼相同檢測 function CreateXmlHttp(){ if (window.ActiveXObject) { xmlHttp= new ActiveXObject('Microsoft.XMLHTTP'); } else if(window.XMLHttpRequest){ xmlHttp= new XMLHttpRequest(); } } //檢測用戶名是否合法 function check_usr(obj){ var objvalue = obj.value; var b=/^[a-zA-Z\d]\w{2,10}[a-zA-Z\d]$/; if (!b.test(objvalue)) { document.getElementByIdx_x('checkusr').innerHTML ="<font color='#ff0000'>用戶名非法!</font>"; return false; } else { CreateXmlHttp(); xmlHttp.open("GET", "../account/check.php?id=" + objvalue, true); xmlHttp.onreadystatechange = checkback; xmlHttp.send(null); } } function checkback(){ var backvalue = null; if(xmlHttp.readyState==1) {document.getElementByIdx_x('checkusr').innerHTML ="<font color='#ff0000'>檢測中...</font>";} if (xmlHttp.responseText == 1) { //check.php 沒注冊返回1,注冊返回2 backvalue = "<font color='#00c72e'>可以使用!</font>"; }else { backvalue="<font color='#ff0000'>抱歉,已經被注冊啦!</font>"; } if (xmlHttp.readyState == 4) { document.getElementByIdx_x('checkusr').innerHTML = backvalue; } } //判斷密碼輸入是否合法,一個是長度,一個是沒有特殊字符 function check_psw(obj){ checkpsw=obj.value; if(checkpsw.length > 5 && checkpsw.length<21){ document.getElementByIdx_x("checkpsw").innerHTML = "<font color='#00c72e'>密碼可以使用!</font>"; }else { document.getElementByIdx_x("checkpsw").innerHTML="<font color='#ff0000'>密碼不符合長度要求!</font>"; } var b=/^[a-zA-Z\d]\w{2,10}[a-zA-Z\d]$/; if (!b.test(checkpsw)) { document.getElementByIdx_x('checkusr').innerHTML ="<font color='#ff0000'>密碼有非法字符!</font>"; return false; }else { document.getElementByIdx_x("checkusr").innerHTML="<font color='#ff0000'>密碼設置符合要求</font>"; } } //判斷兩次密碼輸入是否一致 function check_repsw(obj1,obj2){ var objvalue1=obj1.value; var objvalue2=obj2.value; if(objvalue1==objvalue2){ document.getElementByIdx_x("checkrepsw").innerHTML="<font color='#00c72e'>兩次輸入密碼一致!</font>"; }else { document.getElementByIdx_x("checkrepsw").innerHTML="<font color='#ff0000'>兩次輸入的密碼不一樣!</font>"; } } //判斷手機號碼格式是否合法 function check_tel(obj){ var objvalue=obj.value; var regx=/^(?:13\d|15\d|18[123456789])-?\d{5}(\d{3}|\*{3})$/; if(regx.test(objvalue)){ document.getElementByIdx_x("checktel").innerHTML="<font color='#00c72e'>手機號碼輸入正確!</font>"; }else{ document.getElementByIdx_x("checktel").innerHTML="<font color='#ff0000'>請輸入正確的手機號!</font>"; } } //判斷郵箱地址格式是否合法 function check_mail(obj){ var strm=obj.value; var regm = /^[a-zA-Z0-9_-]+@[a-zA-Z0-9_-]+(\.[a-zA-Z0-9_-]+)+$/;//驗證Mail的正則表達式,^[a-zA-Z0-9_-]:開頭必須為字母,下划線,數字, if (!strm.match(regm)) { document.getElementByIdx_x("checkmail").innerHTML="<font color='#ff0000'>郵箱地址格式錯誤或含有非法字符!</font>"; } else{ document.getElementByIdx_x("checkmail").innerHTML="<font color='#00c72e'>郵箱地址輸入正確!</font>"; } } //點擊按鈕啟動檢測 function check(){ telphone = document.getElementByIdx_x("telphone"); mail = document.getElementByIdx_x("mail"); mima1 = document.getElementByIdx_x("mima1"); mima2 = document.getElementByIdx_x("mima2"); secury_mima = document.getElementByIdx_x("secury_mima"); check_tel(telphone);//檢測電話 check_mail(mail);//檢測郵箱 check_repsw(mima1,mima2);//檢測兩次密碼是否一致 check_psw(secury_mima);//檢測密碼是否合法 } </script>