JS實(shí)現(xiàn)驗(yàn)證碼倒計(jì)時的注冊頁面
更新時間:2018年01月02日 14:09:53 作者:祈澈姑娘
這篇文章給大家分享一段實(shí)例代碼發(fā)送驗(yàn)證碼之后開始60S倒計(jì)時功能,具體實(shí)例代碼大家參考下本文
原型圖
需求:手機(jī)號驗(yàn)證
發(fā)送驗(yàn)證碼之后開始60S倒計(jì)時
60s以后如果沒有填寫驗(yàn)證碼,可重新發(fā)送
<!doctype html> <html> <head> <meta charset="utf-8"> <title>注冊</title> <meta http-equiv="X-UA-Compatible" content="IE=edge"> <meta name="viewport" content="width=device-width, initial-scale=1.0, minimum-scale=1.0, maximum-scale=1.0, user-scalable=no"> <meta name="format-detection" content="telephone=no"> <meta name="renderer" content="webkit"> <meta http-equiv="Cache-Control" content="no-siteapp" /> <script src="http://code.jquery.com/jquery-latest.js";></script> </head> <body> <input type="text" id="phone" class="am-form-field my-radius" placeholder="請輸入手機(jī)號" style=""> <div style="height:2rem;"> <font id="errMsg1" color="red" style=""></font> </div> <div> <input id="rpcode" type="text" placeholder="請輸入驗(yàn)證碼"> <input id="getCode" type="button" value="獲取驗(yàn)證碼" onclick="sendMessages()"></input> <font id="errMsg2" color="red" style="display:none; position:absolution; top:2rem;"></font> </div> <p id="start"> <span>開始</span> </p> <!-- 保存驗(yàn)證碼 --> <input type="text" id="code" hidden="true"> <script> var InterValObj; //timer變量,控制時間 var count = 60; //間隔函數(shù),1秒執(zhí)行 var curCount; //當(dāng)前剩余秒數(shù) var code = ""; //驗(yàn)證碼 var codeLength = 6; //驗(yàn)證碼長度 function sendMessages() { curCount = count; var phone = $("#phone").val() if(validatePhone(phone)) { return; } if(phone != "") { //設(shè)置button效果,開始計(jì)時 $("#getCode").attr("disabled", "true"); $("#getCode").val("請?jiān)? + curCount + "秒內(nèi)輸入"); InterValObj = window.setInterval(SetRemainTimes, 1000); //啟動計(jì)時器,1秒執(zhí)行一次 //向后臺發(fā)送處理數(shù)據(jù) $.ajax({ url: "getCode.action", dataType: "json", type: "get", data: "phone=" + phone, success: function(data) { //保存驗(yàn)證碼 $("#code").val(data); } }); } else { alert("手機(jī)號碼不能為空?。。。。。?); } } //timer處理函數(shù) function SetRemainTimes() { if(curCount == 0) { window.clearInterval(InterValObj); //停止計(jì)時器 $("#getCode").removeAttr("disabled"); //啟用按鈕 $("#getCode").val("重新發(fā)送驗(yàn)證碼"); code = ""; //清除驗(yàn)證碼。如果不清除,過時間后,輸入收到的驗(yàn)證碼依然有效 } else { curCount--; $("#getCode").val("請?jiān)? + curCount + "秒內(nèi)輸入"); } } //開始按鈕點(diǎn)擊事件 $("#start").click(function() { window.location.href = "regafter.html?phone=" + $("#phone").val(); }) //驗(yàn)證手機(jī)號 function validatePhone(phone) { if(phone == '') { $("#errMsg1").html(" 請先填寫手機(jī)號"); $("#errMsg1").show(); return true; } var myreg = /^(((13[0-9]{1})|(15[0-9]{1})|(18[0-9]{1}))+\d{8})$/; if(!myreg.test(phone)) { $("#errMsg1").html(" 請輸入有效的手機(jī)號"); $("#errMsg1").show(); return true; } return false; } //驗(yàn)證碼非空和錯誤驗(yàn)證 function validateCode() { var phone = $("#phone").val(); var code = $("#code").val(); var rpcode = $("#rpcode").val(); if(validatePhone(phone)) { return true; } if(code == '') { $("#errMsg2").html(" 請先獲取驗(yàn)證碼"); $("#errMsg2").show(); return true; } if(rpcode == '' || code != rpcode) { $("#errMsg2").html(" 請正確輸入驗(yàn)證碼"); $("#errMsg2").show(); return true; } alert(code != rpcode); return false; } $("#phone").on("focus", function() { $("#errMsg1").hide(); }) $("#rpcode").on("focus", function() { $("#errMsg2").hide(); }) </script> </body> </html>
您可能感興趣的文章:
- 用javascript制作qq注冊動態(tài)頁面
- jsp+dao+bean+servlet(MVC模式)實(shí)現(xiàn)簡單用戶登錄和注冊頁面
- 使用JSP實(shí)現(xiàn)簡單的用戶登錄注冊頁面示例代碼解析
- JS一個簡單的注冊頁面實(shí)例
- JavaScript 完成注冊頁面表單校驗(yàn)的實(shí)例
- node.js實(shí)現(xiàn)登錄注冊頁面
- 原生js驗(yàn)證簡潔注冊登錄頁面
- js正則表達(dá)式注冊頁面表單驗(yàn)證
- js當(dāng)前頁面登錄注冊框,固定div,底層陰影的實(shí)例代碼
- JS當(dāng)前頁面登錄注冊框,固定DIV,底層陰影的實(shí)例代碼
- javascript實(shí)現(xiàn)信息的顯示和隱藏如注冊頁面
- php用戶注冊頁面利用js進(jìn)行表單驗(yàn)證具體實(shí)例
- JS、CSS和HTML實(shí)現(xiàn)注冊頁面
相關(guān)文章
(currentStyle)javascript為何有時用style得不到已設(shè)定的CSS的屬性
(currentStyle)javascript為何有時用style得不到已設(shè)定的CSS的屬性...2007-08-08javascript中巧用“閉包”實(shí)現(xiàn)程序的暫停執(zhí)行功能
javascript中巧用“閉包”實(shí)現(xiàn)程序的暫停執(zhí)行功能...2007-04-04JS中的public和private對象,即static修飾符
先看下面的例子,它將告訴我們在JS世界中也有C#里的public , private ,及static等2012-01-01JavaScript中的Array 對象(數(shù)組對象)
Array 對象用于在單個的變量中存儲多個值。2016-06-06TypeScript裝飾器之項(xiàng)目數(shù)據(jù)轉(zhuǎn)換詳解
這篇文章主要為大家詳細(xì)介紹了TypeScript項(xiàng)目中是如何進(jìn)行數(shù)據(jù)轉(zhuǎn)換的,文中的示例代碼簡潔易懂,感興趣的小伙伴可以跟隨小編一起學(xué)習(xí)一下2024-10-10js實(shí)現(xiàn)帶三角符的手風(fēng)琴效果
本文主要介紹了js實(shí)現(xiàn)帶三角符手風(fēng)琴效果的實(shí)例。具有很好的參考價值,下面跟著小編一起來看下吧2017-03-03