后台Java代码【验证码生成】
/** * 随机生成6位随机验证码 */ public static String createRandomVcode(){ //验证码 String vcode = ""; for (int i = 0; i < 6; i++) { vcode = vcode + (int)(Math.random() * 9); } return vcode; }
后台Java代码【使用验证码并将验证码保存到session里面】
String authCode = xioo.createRandomVcode(); //随机生成验证码 HttpSession session=request.getSession(); //session属性 session.setAttribute("authCode", authCode); // 保存验证码到session里面
后台Java代码【将用户输入的验证码与session里面的验证码对比】
HttpSession session=request.getSession(); String usercode=request.getParameter("user_code"); //获取用户输入的验证码 String sessioncode=(String) session.getAttribute("authCode"); //获取保存在session里面的验证码 String result=""; if( usercode != null && usercode.equals(sessioncode)){ //对比两个code是否正确 result = "1"; }else{ result = "0"; } PrintWriter out = response.getWriter(); out.write(result.toString()); //将数据传到前台 }
前台Ajax代码【获取用户输入的代码传到后台】
$(document).ready(function() { $("#user_code").blur(function() { var user_code = $("#user_code").val(); //ur事件 // 向后台发送处理数据 $.ajax({ url : "CheckCode", //目标地址 data : "user_code=" + user_code, //传输的数据 type : "POST", // 用POST方式传输 dataType : "text", // 数据格式 success : function(data) { data = parseInt(data, 10); if (data == 1) { $("#error").html("<font color='#339933'>√ 短信验证码正确,请继续</font>"); } else if (data == 0){ $("#error").html("<font color='red'>× 验证码有误,请核实后重新填写</font>"); } } }); }); });
<input type="text" name="user_code" id="user_code" placeholder="请输入验证码"/>