This time I will bring you the Ajax partial refresh login function with verification code. What are the precautions for Ajax partial refresh login with verification code? The following is a practical case, let’s take a look.
Most of the current login interfaces have: verification code function + verification code partial refresh + ajax login. The most obvious benefit of logging in with ajax is that it is fast and the URL address does not change. Nowadays, the login function rarely uses form post submission. Most of them have used ajax to access the background locally and then parse the return value and display the result on the interface. The theory still needs to be put into practice to be verified. Let’s go directly to the code.
Run interface:
1. The verification code background access part has been introduced in the previous blog. Here we introduce how to use src in img to achieve partial refresh. Verification code function.
html part:
<p><label class="lbright">验证码:</label> <span> <input type="text" name="validcode" style="width:70px; vertical-align:middle;" id="validcode"/> <img id="codePic" src="http://127.0.0.1:8888/TP/codePic" width="60" height="21" style="vertical-align:middle;cursor:pointer;"/> </span> <a class="blurry" id="newPic" onclick="getPic();">看不清楚,换一张</a> </p>
js part:
<script type="text/javascript"> function getPic(){ $("#codePic").attr("src","http://127.0.0.1:8888/TP/codePic?flag="+Math.random()); }; </script>
The most important part of this part is $("#codePic").attr("src","http:/ /127.0.0.1:8888/TP/codePic?flag="+Math.random()); This part of the code. If you don’t add flag="+Math.random(), the partial refresh function cannot be implemented. Because if the address in src is the same every time it is accessed, it will not be updated. You can know why this happens. Go and study. CodePic is actually an action. The function of this action is to use the java brush to draw the verification code and package it into a picture and return it to the src in the img.
2. Use the modal in bootstrap to implement the dialog box. Function. Because it is necessary to verify whether the user name or password is empty before logging in. If an error occurs, a dialog box needs to pop up to prompt the user. The verification part is implemented with js, and the dialog part is implemented with bootstrap modal
##. #html dialog part:<p class="modal" id="mymodal" tabindex="-1"> <p class="modal-dialog"> <p class="modal-content"> <p class="modal-header"> <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button> <h4 class="modal-title">亲,您好</h4> </p> <p class="modal-body" id="dialogs"> <p></p> </p> <p class="modal-footer"> <button type="button" data-dismiss="modal" style="color: #FFFFFF;background-color:#FB8F02; text-align:center; padding:10px;border: 1px solid #dedede;-moz-border-radius: 15px;-webkit-border-radius: 15px; border-radius:15px;vertical-align:middle;">我知道了 </button> </p> </p><!-- /.modal-content --> </p><!-- /.modal-dialog --> </p><!-- /.modal -->
<script type="text/javascript"> function dialog(){ $("#mymodal").modal("toggle"); }; function login(){ var userName=document.getElementById("username").value; var pwd=document.getElementById("password").value; var validcode=document.getElementById("validcode").value; var matchResult=true; if(userName==""){ document.getElementById("dialogs").innerHTML="<h3>用户账号不能为空!</h3>"; dialog(); matchResult=false; }else if(pwd==""){ document.getElementById("dialogs").innerHTML="<h3>用户密码不能为空!</h3>"; dialog(); matchResult=false; }else if(validcode==""){ document.getElementById("dialogs").innerHTML="<h3>验证码不能为空!</h3>"; dialog(); matchResult=false; }else if(userName.length<6||userName.length>20){ document.getElementById("dialogs").innerHTML="<h3>用户名长度应在6到20个字符之间!</h3>"; dialog(); matchResult=false; }else if(pwd.length<6||pwd.length>20){ document.getElementById("dialogs").innerHTML="<h3>密码或重复密码长度应在6到20个字符之间!</h3>"; dialog(); matchResult=false; } }; </script>
<link href="css/global.css" rel="stylesheet" type="text/css" /> <link rel="stylesheet" href="css/bootstrap.min.css"> <script src='js/jquery-1.9.1.js'></script> <script src="js/jquery.min.js"></script> <script src="js/jquery.js"></script> <script src="js/bootstrap.min.js"></script>
<p class="submitcon"> <input type="button" value="登 录" style="height:45px;width:130px;margin-top:15px;color: #FFFFFF;background-color:#FB8F02;font-size: 20px; padding:5px;border: 3px solid #dedede;-moz-border-radius: 15px;-webkit-border-radius: 15px; border-radius:15px;vertical-align:middle;text-align:center;" onclick="login();"/> </p>
<script type="text/javascript"> function login(){ var userName=document.getElementById("username").value; var pwd=document.getElementById("password").value; var validcode=document.getElementById("validcode").value; var matchResult=true; if(userName==""){ document.getElementById("dialogs").innerHTML="<h3>用户账号不能为空!</h3>"; dialog(); matchResult=false; }else if(pwd==""){ document.getElementById("dialogs").innerHTML="<h3>用户密码不能为空!</h3>"; dialog(); matchResult=false; }else if(validcode==""){ document.getElementById("dialogs").innerHTML="<h3>验证码不能为空!</h3>"; dialog(); matchResult=false; }else if(userName.length<6||userName.length>20){ document.getElementById("dialogs").innerHTML="<h3>用户名长度应在6到20个字符之间!</h3>"; dialog(); matchResult=false; }else if(pwd.length<6||pwd.length>20){ document.getElementById("dialogs").innerHTML="<h3>密码或重复密码长度应在6到20个字符之间!</h3>"; dialog(); matchResult=false; } if(matchResult==true){ $.post("http://127.0.0.1:8888/TP/usersAction?method=login", {usersName:userName,password:pwd, validcode:validcode},function(data,status){ var error=data.error; var result=data.result; getPic(); if(error=="error"){ errors="true"; document.getElementById("dialogs").innerHTML="<h3>验证码错误,请重新输入!</h3>"; dialog(); } if(result=="0"){ document.getElementById("dialogs").innerHTML="<h3>您输入的用户名不存在!</h3>"; document.getElementById("username").value=""; dialog(); }else if(result=="1"){ document.getElementById("dialogs").innerHTML="<h3>您输入的密码错误,请重新输入!</h3>"; document.getElementById("password").value=""; dialog(); }else if(result=="2"){ document.getElementById("dialogs").innerHTML="<h3>您的管理员权限不够!</h3>"; dialog(); }else if(result=="3"){ location.href="http://127.0.0.1:8888/TP/main.jsp"; } },"json"); } }; </script>
<%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%> <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core"%>无标题文档 <link href="css/global.css" rel="stylesheet" type="text/css" /> <link rel="stylesheet" href="css/bootstrap.min.css"> <script src='js/jquery-1.9.1.js'></script> <script src="js/jquery.min.js"></script> <script src="js/jquery.js"></script> <script src="js/bootstrap.min.js"></script> <p class="modal" id="mymodal" tabindex="-1"> <p class="modal-dialog"> <p class="modal-content"> <p class="modal-header"> <button type="button" class="close" data-dismiss="modal"><span aria-hidden="true">×</span><span class="sr-only">Close</span></button> <h4 class="modal-title">亲,您好</h4> </p> <p class="modal-body" id="dialogs"> <p></p> </p> <p class="modal-footer"> <button type="button" data-dismiss="modal" style="color: #FFFFFF;background-color:#FB8F02; text-align:center; padding:10px;border: 1px solid #dedede;-moz-border-radius: 15px;-webkit-border-radius: 15px; border-radius:15px;vertical-align:middle;">我知道了 </button> </p> </p><!-- /.modal-content --> </p><!-- /.modal-dialog --> </p><!-- /.modal -->
大学二手交易平台管理系统
BBW综合管理系统
<p><label class="lbright">验证码:</label> <span> <input type="text" name="validcode" style="width:70px; vertical-align:middle;" id="validcode"/> <img id="codePic" src="http://127.0.0.1:8888/TP/codePic" width="60" height="21" style="vertical-align:middle;cursor:pointer;"/> </span> <a class="blurry" id="newPic" onclick="getPic();">看不清楚,换一张</a> </p> <p class="submitcon"> <input type="button" value="登 录" style="height:45px;width:130px;margin-top:15px;color: #FFFFFF;background-color:#FB8F02;font-size: 20px; padding:5px;border: 3px solid #dedede;-moz-border-radius: 15px;-webkit-border-radius: 15px; border-radius:15px;vertical-align:middle;text-align:center;" onclick="login();"/> </p>
Copyright 2015-2016 林志强 版权所有
How does ajax submit a form and implement file upload
##How to process the json data uploaded by ajax background success
The above is the detailed content of Ajax creates partial refresh login function with verification code. For more information, please follow other related articles on the PHP Chinese website!