使用jQuery如何写一个含验证码的登录界面
程序员文章站
2024-01-27 18:33:46
一个包含用户名,密码,验证码的简单的登陆界面,如下图所示:
首先是 html 代码:
一个包含用户名,密码,验证码的简单的登陆界面,如下图所示:
首先是 html 代码:
<div id="divid"> <div style="background-color:transparent;"> <form id="ff" method="post"> <ul class="reg-box"> <li> <label for="">账 号</label> <input type="text" name="accname" value="" class="account" maxlength="11" style="color:#999;" onblur="textblur(this)" onfocus="textfocus(this)"/> <span class="error error5"></span> </li> <li> <label for="">密 码</label> <input type="password" name="accpassword" class="admin_pwd" value="" style="color:#999;" onblur="textblur(this)" onfocus="textfocus(this)"/> <span class="error error6"></span> </li> <li> <label for="">验证码</label> <input type="text" class="sradd photokey" id="key" value="" style="color:#999;ime-mode:disabled;-webkit-ime-mode:inactive;" onblur="textblur(this)" onfocus=" textfocus(this) " /> <span class="add phokey"></span> <span class="error error7"></span> </li> </ul> <div class="sub"> <input type="submit" value="立即登录"/> </div> </form> </div> </div>
然后是实现验证用户的输入是否正确的 js 代码:
//文本框默认提示文字 function textfocus(el) { if (el.defaultvalue == el.value) { el.value = ''; el.style.color = '#333'; } } function textblur(el) { if (el.value == '') { el.value = el.defaultvalue; el.style.color = '#999'; } } $(function(){ /*生成验证码*/ create_code(); //登录页面的提示文字 //账户输入框失去焦点 (function login_validate(){ $(".reg-box .account").blur(function(){ //reg=/^1[3|4|5|8][0-9]\d{4,8}$/i;//验证手机正则(输入前7位至11位) if( $(this).val()==""|| $(this).val()=="请输入您的账号") { $(this).addclass("errorc"); $(this).next().html("账号不能为空!"); $(this).next().css("display","block"); $(".sub input").prop('disabled', true); } // else if($(".reg-box .account").val().length<11) // { // $(this).addclass("errorc"); // $(this).next().html("账号长度有误!"); // $(this).next().css("display","block"); // } // else if(!reg.test($(".reg-box .account").val())) // { // $(this).addclass("errorc"); // $(this).next().html("账号不存在!"); // $(this).next().css("display","block"); // } else { $(".sub input").prop('disabled', false); $(this).addclass("checkedn"); $(this).removeclass("errorc"); $(this).next().empty(); } }); /*密码输入框失去焦点*/ $(".reg-box .admin_pwd").blur(function(){ //reg=/^[\@a-za-z0-9\!\#\$\%\^\&\*\.\~]{6,22}$/; if($(this).val() == ""){ $(this).addclass("errorc"); $(this).next().html("密码不能为空!"); $(this).next().css("display","block"); $(".sub input").prop('disabled', true); } // else if(!reg.test($(".admin_pwd").val())) { // $(this).addclass("errorc"); // $(this).next().html("密码为6~12位的数字、字母或特殊字符!"); // $(this).next().css("display","block"); // } else { $(".sub input").prop('disabled', false); $(this).addclass("checkedn"); $(this).removeclass("errorc"); $(this).next().empty(); } }); /*验证码输入框失去焦点*/ $(".reg-box .photokey").blur(function(){ var code1=$('.reg-box input.photokey').val().tolowercase(); var code2=$(".reg-box .phokey").text().tolowercase(); if(code1!=code2) { $(this).addclass("errorc"); $(this).next().next().html("验证码输入错误!!!"); $(this).next().next().css("display","block"); $(".sub input").prop('disabled', true); } else { $(".sub input").prop('disabled', false); $(this).removeclass("errorc"); $(this).next().next().empty(); $(this).addclass("checkedn"); } }) })(); });
函数 create_code() 用于生成验证码:
function create_code() { function shuffle() { var arr = ['1', 'r', 'q', '4', 's', '6', 'w', 'u', 'd', 'i', 'a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j', 'k', 'l', 'm', 'n', 'o', 'p', 'q', '2', 's', 't', '8', 'v', '7', 'x', 'y', 'z', 'a', 'b', 'c', '9', 'e', 'f', 'g', 'h', '0', 'j', 'k', 'l', 'm', 'n', 'o', 'p', '3', 'r', '5', 't', 'u', 'v', 'w', 'x', 'y', 'z']; return arr.sort(function () { return (math.random() - .5); }); }; shuffle(); function show_code() { var ar1 = ''; var code = shuffle(); for (var i = 0; i < 6; i++) { ar1 += code[i]; } ; //var ar=ar1.join(''); $(".reg-box .phokey").text(ar1); }; show_code(); $(".reg-box .phokey").click(function () { show_code(); }); }
最后是非常重要的 css 代码:
body{ background: #000; } #divid { position: fixed; left: 47%; top: 53%; width: 500px; margin-left: -200px; margin-top: -150px; font-family: "黑体"; /*禁止复制粘贴*/ -moz-user-select: none; -webkit-user-select: none; user-select:none; color:#fff; } .register_dialog_info { float: left; margin-left:10px; color: #fff; margin-top: 5px; font-size: 20px; } form{padding: 20px 0px;} ul li {list-style: none;} .sub { text-align: center; } .sub input { display: inline-block; width: 300px; background-color: #012246; color: rgb(255, 255, 255); font-size: 20px; text-align: center; height: 40px; line-height: 40px; font-family: 黑体; outline: none; border: none; margin: auto; border-radius: 10px; } input[type = "submit"]:hover{cursor: pointer;} .reg-box { padding-left: 30px; } .reg-box li { line-height: 44px; width: 500px; overflow: hidden; } .reg-box li label { width: 68px; height: 50px; float: left; line-height: 50px; text-align: right; padding-right: 20px; } .reg-box li input,.reg-box li select{ border-radius: 3px; padding: 6px 0; font-size: 16px; width: 296px; height: 49px; line-height: 28px; border: 1px solid #dddddd; text-indent: 0.5em; float: left; } .reg-box li select option{font-size:16px;} /*验证码*/ .add { width: 128px; height: 44px; float: left; _display: inline; cursor: pointer; margin-left: 20px; } .reg-box li .sradd { width: 148px; text-indent: 4px; font-size: 14px; } .reg-box li .input-code { width: 106px; padding: 10px; font-family: arial; font-style: italic; color: red; letter-spacing: 1px; cursor: pointer; text-align: center; text-indent: 0; } .yzm,.phokey { background: #012246; text-align: center; line-height: 44px; color: #fff; border-radius: 3px;} .phokey{letter-spacing: 3px; font-size:18px;} .yzmc { background: #dddddd; text-align: center; line-height: 44px; color: #999; } .error { clear:both;display:block;color: red; padding-left: 90px; padding-bottom:5px;height:20px;float: left; font-size:12px;line-height: 20px;} input { background-color: #fff; outline: none; } .reg-box li { width: auto; } .reg-box li input.errorc, .errorc{ border: 1px solid blue; } .reg-box li input.checkedn , .checkedn{ border: 1px solid #1ece6d; }
以上所述是小编给大家介绍的如何写一个含验证码的登录界面详解整合,希望对大家有所帮助
推荐阅读
-
使用jQuery如何写一个含验证码的登录界面
-
Android中使用Kotlin实现一个简单的登录界面
-
Android中使用Kotlin实现一个简单的登录界面
-
使用jQuery,Angular实现登录界面验证码详解
-
使用jQuery如何写一个含验证码的登录界面
-
使用jquery实现的一个图片延迟加载插件(含图片延迟加载原理)
-
使用jQuery发生ajax请求,做一个注册登录功能!(本期知识:jQuery中的ajax)
-
使用jquery实现的一个图片延迟加载插件(含图片延迟加载原理)
-
使用jQuery发生ajax请求,做一个注册登录功能!(本期知识:jQuery中的ajax)
-
使用jquery实现的一个图片延迟加载插件(含图片延迟加载原理)_jquery