js判斷手機號是否正確并返回的代碼,具體代碼如下所示:
<form method="post" action="login.php" onsubmit="return abc()"> <input type="text" id="phone" /> <input type="submit" value="登錄"/> </form><script type="text/javascript">function abc() { var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+/d{8})$/; if(!myreg.test($("#phone").val())) { alert('請輸入有效的手機號碼!'); return false; } callback();}</script>上述js判斷的是130-139,150-159,180-189號段的,如果需要別的號段,自行添加
效果是 點擊登錄按鈕時,如果手機號不對 不做任何跳轉
PS:JS判斷手機號是否正確(正則表達式)
/^13d{9}$/g||/^15[8,9]d{8}$/g其中 ^ 是以什么開頭的意思, $ 是以什么結尾的意思,d 匹配是任意一位數字,后面跟著的{9}是指d重復的次數,相當于dddddddd這個正則表達式匹配的是以13開頭和以任意9個數字結尾的字串, / 是正則表達式的分界符,后面跟著的 g 呢,是對指定的字串全局匹配(不加則只匹配第一個),事實上有這個 g 和沒有 g 在這里的情況是一樣的,test方法返回一個 Boolean 值,它指出在被查找的字符串中是否存在模式,如存在則返回 true,否則返回 false。
g表示全局,全部,也就是文本內所有符合條件的,沒有這個g的話,只匹配一次。
.test(),是前面那個/^....$/g,也就是正則表達式的一個方法。
下面是一段完整的監測代碼,供大家參考:
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><HTML><HEAD><TITLE> New Document </TITLE><META NAME="Generator" CONTENT="EditPlus"><META NAME="Author" CONTENT=""><META NAME="Keywords" CONTENT=""><META NAME="Description" CONTENT=""><script language="javascript">function chk(){var tel = document.all("text").value;if(/^13d{9}$/g.test(tel)||(/^15[8,9]d{8}$/g.test(tel))) { alert("手機號正確"); }else { alert("手機號錯誤"); }}</script></HEAD><BODY><form method="" action="">手機號:<input type="text" name="text"> <input type="button" value="檢測" onclick="chk()"></form></BODY></HTML>驗證中國固定電話號碼:
((d{3,4})|d{3,4}-|s)?d{8}以上所述是小編給大家介紹的js判斷手機號是否正確并返回,希望對大家有所幫助,如果大家有任何疑問請給我留言,小編會及時回復大家的。在此也非常感謝大家對武林網網站的支持!
新聞熱點
疑難解答