js经典校验之注册与登录校验
平时都专注于后台功能的实现和逻辑需求的分析及数据库方面的设计,很少关注前端的设计,而项目开发过程中专门负责后台是不太可能的事,所以前端我们也需要会用,除了漂亮的首页等其他的交给美工来做,一些功能性的东西还是有负责模块开发的人来完成,所以除了后台、数据库外,前端也需要开发人员懂其一二。
例子1
用户注册校验
用户注册jsp页面
- <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
- <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>注册页面</title>
- <meta http-equiv="pragma" content="no-cache">
- <meta http-equiv="cache-control" content="no-cache">
- <meta http-equiv="expires" content="0">
- <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
- <meta http-equiv="description" content="This is my page">
- <link rel="stylesheet" type="text/css" href="<c:url value='/jsps/css/user/regist.css'/>">
- <script type="text/javascript" src="<c:url value='/jquery/jquery-1.5.1.js'/>"></script>
- <script type="text/javascript" src="<c:url value='/jsps/js/user/regist.js'/>"></script>
- </head>
- <body>
- <div id="divMain">
- <div id="divTitle">
- <span id="spanTitle">新用户注册</span>
- </div>
- <div id="divBody">
- <form action="<c:url value='/UserServlet'/>" method="post" id="registForm">
- <input type="hidden" name="method" value="regist"/>
- <table id="tableForm">
- <tr>
- <td class="tdText">用户名:</td>
- <td class="tdInput">
- <input class="inputClass" type="text" name="loginname" id="loginname" value="${form.loginname }"/>
- </td>
- <td class="tdError">
- <label class="errorClass" id="loginnameError">${errors.loginname }</label>
- </td>
- </tr>
- <tr>
- <td class="tdText">登录密码:</td>
- <td>
- <input class="inputClass" type="password" name="loginpass" id="loginpass" value="${form.loginpass }"/>
- </td>
- <td>
- <label class="errorClass" id="loginpassError">${errors.loginpass }</label>
- </td>
- </tr>
- <tr>
- <td class="tdText">确认密码:</td>
- <td>
- <input class="inputClass" type="password" name="reloginpass" id="reloginpass" value="${form.reloginpass }"/>
- </td>
- <td>
- <label class="errorClass" id="reloginpassError">${errors.reloginpass}</label>
- </td>
- </tr>
- <tr>
- <td class="tdText">Email:</td>
- <td>
- <input class="inputClass" type="text" name="email" id="email" value="${form.email }"/>
- </td>
- <td>
- <label class="errorClass" id="emailError">${errors.email}</label>
- </td>
- </tr>
- <tr>
- <td class="tdText">验证码:</td>
- <td>
- <input class="inputClass" type="text" name="verifyCode" id="verifyCode" value="${form.verifyCode }"/>
- </td>
- <td>
- <label class="errorClass" id="verifyCodeError">${errors.verifyCode}</label>
- </td>
- </tr>
- <tr>
- <td></td>
- <td>
- <div id="divVerifyCode"><img id="imgVerifyCode" src="<c:url value='/VerifyCodeServlet'/>"/></div>
- </td>
- <td>
- <label><a href="javascript:_hyz()">换一张</a></label>
- </td>
- </tr>
- <tr>
- <td></td>
- <td>
- <input type="image" src="<c:url value='/images/regist1.jpg'/>" id="submitBtn"/>
- </td>
- <td>
- <label></label>
- </td>
- </tr>
- </table>
- </form>
- </div>
- </div>
- </body>
- </html>
用户注册校验js
- $(function() {
- /*
- * 1. 得到所有的错误信息,循环遍历之。调用一个方法来确定是否显示错误信息!
- */
- $(".errorClass").each(function() {
- showError($(this));//遍历每个元素,使用每个元素来调用showError方法
- });
- /*
- * 2. 切换注册按钮的图片
- */
- $("#submitBtn").hover(
- function() {
- $("#submitBtn").attr("src", "/goods/images/regist2.jpg");
- },
- function() {
- $("#submitBtn").attr("src", "/goods/images/regist1.jpg");
- }
- );
- /*
- * 3. 输入框得到焦点隐藏错误信息
- */
- $(".inputClass").focus(function() {
- var labelId = $(this).attr("id") + "Error";//通过输入框找到对应的label的id
- $("#" + labelId).text("");//把label的内容清空!
- showError($("#" + labelId));//隐藏没有信息的label
- });
- /*
- * 4. 输入框失去焦点进行校验
- */
- $(".inputClass").blur(function() {
- var id = $(this).attr("id");//获取当前输入框的id
- var funName = "validate" + id.substring(0,1).toUpperCase() + id.substring(1) + "()";//得到对应的校验函数名
- eval(funName);//执行函数调用
- });
- /*
- * 5. 表单提交时进行校验
- */
- $("#registForm").submit(function() {
- var bool = true;//表示校验通过
- if(!validateLoginname()) {
- bool = false;
- }
- if(!validateLoginpass()) {
- bool = false;
- }
- if(!validateReloginpass()) {
- bool = false;
- }
- if(!validateEmail()) {
- bool = false;
- }
- if(!validateVerifyCode()) {
- bool = false;
- }
- return bool;
- });
- });
- /*
- * 登录名校验方法
- */
- function validateLoginname() {
- var id = "loginname";
- var value = $("#" + id).val();//获取输入框内容
- /*
- * 1. 非空校验
- */
- if(!value) {
- /*
- * 获取对应的label
- * 添加错误信息
- * 显示label
- */
- $("#" + id + "Error").text("用户名不能为空!");
- showError($("#" + id + "Error"));
- return false;
- }
- /*
- * 2. 长度校验
- */
- if(value.length < 3 || value.length > 20) {
- /*
- * 获取对应的label
- * 添加错误信息
- * 显示label
- */
- $("#" + id + "Error").text("用户名长度必须在3 ~ 20之间!");
- showError($("#" + id + "Error"));
- false;
- }
- /*
- * 3. 是否注册校验
- */
- $.ajax({
- url:"/goods/UserServlet",//要请求的servlet
- data:{method:"ajaxValidateLoginname", loginname:value},//给服务器的参数
- type:"POST",
- dataType:"json",
- async:false,//是否异步请求,如果是异步,那么不会等服务器返回,我们这个函数就向下运行了。
- cache:false,
- success:function(result) {
- if(!result) {//如果校验失败
- $("#" + id + "Error").text("用户名已被注册!");
- showError($("#" + id + "Error"));
- return false;
- }
- }
- });
- return true;
- }
- /*
- * 登录密码校验方法
- */
- function validateLoginpass() {
- var id = "loginpass";
- var value = $("#" + id).val();//获取输入框内容
- /*
- * 1. 非空校验
- */
- if(!value) {
- /*
- * 获取对应的label
- * 添加错误信息
- * 显示label
- */
- $("#" + id + "Error").text("密码不能为空!");
- showError($("#" + id + "Error"));
- return false;
- }
- /*
- * 2. 长度校验
- */
- if(value.length < 3 || value.length > 20) {
- /*
- * 获取对应的label
- * 添加错误信息
- * 显示label
- */
- $("#" + id + "Error").text("密码长度必须在3 ~ 20之间!");
- showError($("#" + id + "Error"));
- false;
- }
- return true;
- }
- /*
- * 确认密码校验方法
- */
- function validateReloginpass() {
- var id = "reloginpass";
- var value = $("#" + id).val();//获取输入框内容
- /*
- * 1. 非空校验
- */
- if(!value) {
- /*
- * 获取对应的label
- * 添加错误信息
- * 显示label
- */
- $("#" + id + "Error").text("确认密码不能为空!");
- showError($("#" + id + "Error"));
- return false;
- }
- /*
- * 2. 两次输入是否一致校验
- */
- if(value != $("#loginpass").val()) {
- /*
- * 获取对应的label
- * 添加错误信息
- * 显示label
- */
- $("#" + id + "Error").text("两次输入不一致!");
- showError($("#" + id + "Error"));
- false;
- }
- return true;
- }
- /*
- * Email校验方法
- */
- function validateEmail() {
- var id = "email";
- var value = $("#" + id).val();//获取输入框内容
- /*
- * 1. 非空校验
- */
- if(!value) {
- /*
- * 获取对应的label
- * 添加错误信息
- * 显示label
- */
- $("#" + id + "Error").text("Email不能为空!");
- showError($("#" + id + "Error"));
- return false;
- }
- /*
- * 2. Email格式校验
- */
- if(!/^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+((\.[a-zA-Z0-9_-]{2,3}){1,2})$/.test(value)) {
- /*
- * 获取对应的label
- * 添加错误信息
- * 显示label
- */
- $("#" + id + "Error").text("错误的Email格式!");
- showError($("#" + id + "Error"));
- false;
- }
- /*
- * 3. 是否注册校验
- */
- $.ajax({
- url:"/goods/UserServlet",//要请求的servlet
- data:{method:"ajaxValidateEmail", email:value},//给服务器的参数
- type:"POST",
- dataType:"json",
- async:false,//是否异步请求,如果是异步,那么不会等服务器返回,我们这个函数就向下运行了。
- cache:false,
- success:function(result) {
- if(!result) {//如果校验失败
- $("#" + id + "Error").text("Email已被注册!");
- showError($("#" + id + "Error"));
- return false;
- }
- }
- });
- return true;
- }
- /*
- * 验证码校验方法
- */
- function validateVerifyCode() {
- var id = "verifyCode";
- var value = $("#" + id).val();//获取输入框内容
- /*
- * 1. 非空校验
- */
- if(!value) {
- /*
- * 获取对应的label
- * 添加错误信息
- * 显示label
- */
- $("#" + id + "Error").text("验证码不能为空!");
- showError($("#" + id + "Error"));
- return false;
- }
- /*
- * 2. 长度校验
- */
- if(value.length != 4) {
- /*
- * 获取对应的label
- * 添加错误信息
- * 显示label
- */
- $("#" + id + "Error").text("错误的验证码!");
- showError($("#" + id + "Error"));
- false;
- }
- /*
- * 3. 是否正确
- */
- $.ajax({
- url:"/goods/UserServlet",//要请求的servlet
- data:{method:"ajaxValidateVerifyCode", verifyCode:value},//给服务器的参数
- type:"POST",
- dataType:"json",
- async:false,//是否异步请求,如果是异步,那么不会等服务器返回,我们这个函数就向下运行了。
- cache:false,
- success:function(result) {
- if(!result) {//如果校验失败
- $("#" + id + "Error").text("验证码错误!");
- showError($("#" + id + "Error"));
- return false;
- }
- }
- });
- return true;
- }
- /*
- * 判断当前元素是否存在内容,如果存在显示,不页面不显示!
- */
- function showError(ele) {
- var text = ele.text();//获取元素的内容
- if(!text) {//如果没有内容
- ele.css("display", "none");//隐藏元素
- } else {//如果有内容
- ele.css("display", "");//显示元素
- }
- }
- /*
- * 换一张验证码
- */
- function _hyz() {
- /*
- * 1. 获取<img>元素
- * 2. 重新设置它的src
- * 3. 使用毫秒来添加参数
- */
- $("#imgVerifyCode").attr("src", "/goods/VerifyCodeServlet?a=" + new Date().getTime());
- }
例子2
用户登录校验
用户登录jsp
- <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
- <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>登录</title>
- <meta http-equiv="pragma" content="no-cache">
- <meta http-equiv="cache-control" content="no-cache">
- <meta http-equiv="expires" content="0">
- <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
- <meta http-equiv="description" content="This is my page">
- <meta http-equiv="content-type" content="text/html;charset=utf-8">
- <link rel="stylesheet" type="text/css" href="<c:url value='/jsps/css/user/login.css'/>">
- <script type="text/javascript" src="<c:url value='/jquery/jquery-1.5.1.js'/>"></script>
- <script type="text/javascript" src="<c:url value='/jsps/js/user/login.js'/>"></script>
- <script src="<c:url value='/js/common.js'/>"></script>
- <script type="text/javascript">
- $(function() {/*Map<String(Cookie名称),Cookie(Cookie本身)>*/
- // 获取cookie中的用户名
- var loginname = window.decodeURI("${cookie.loginname.value}");
- if("${requestScope.user.loginname}") {
- loginname = "${requestScope.user.loginname}";
- }
- $("#loginname").val(loginname);
- });
- </script>
- </head>
- <body>
- <div class="main">
- <div><img src="<c:url value='/images/logo.gif'/>" /></div>
- <div>
- <div class="imageDiv"><img class="img" src="<c:url value='/images/zj.png'/>"/></div>
- <div class="login1">
- <div class="login2">
- <div class="loginTopDiv">
- <span class="loginTop">传智会员登录</span>
- <span>
- <a href="<c:url value='/jsps/user/regist.jsp'/>" class="registBtn"></a>
- </span>
- </div>
- <div>
- <form target="_top" action="<c:url value='/UserServlet'/>" method="post" id="loginForm">
- <input type="hidden" name="method" value="login" />
- <table>
- <tr>
- <td width="50"></td>
- <td><label class="error" id="msg">${msg }</label></td>
- </tr>
- <tr>
- <td width="50">用户名</td>
- <td><input class="input" type="text" name="loginname" id="loginname"/></td>
- </tr>
- <tr>
- <td height="20"> </td>
- <td><label id="loginnameError" class="error"></label></td>
- </tr>
- <tr>
- <td>密 码</td>
- <td><input class="input" type="password" name="loginpass" id="loginpass" value="${user.loginpass }"/></td>
- </tr>
- <tr>
- <td height="20"> </td>
- <td><label id="loginpassError" class="error"></label></td>
- </tr>
- <tr>
- <td>验证码</td>
- <td>
- <input class="input yzm" type="text" name="verifyCode" id="verifyCode" value="${user.verifyCode }"/>
- <img id="vCode" src="<c:url value='/VerifyCodeServlet'/>"/>
- <a id="verifyCode">换张图</a>
- </td>
- </tr>
- <tr>
- <td height="20px"> </td>
- <td><label id="verifyCodeError" class="error"></label></td>
- </tr>
- <tr>
- <td> </td>
- <td align="left">
- <input type="image" id="submit" src="<c:url value='/images/login1.jpg'/>" class="loginBtn"/>
- </td>
- </tr>
- </table>
- </form>
- </div>
- </div>
- </div>
- </div>
- </div>
- </body>
- </html>
用户登录校验js
- <span style="font-size:18px;">$(function() {
- /*
- * 1. 让登录按钮在得到和失去焦点时切换图片
- */
- $("#submit").hover(
- function() {
- $("#submit").attr("src", "/goods/images/login2.jpg");
- },
- function() {
- $("#submit").attr("src", "/goods/images/login1.jpg");
- }
- );
- /*
- * 2. 给注册按钮添加submit()事件,完成表单校验
- */
- $("#submit").submit(function(){
- $("#msg").text("");
- var bool = true;
- $(".input").each(function() {
- var inputName = $(this).attr("name");
- if(!invokeValidateFunction(inputName)) {
- bool = false;
- }
- });
- return bool;
- });
- /*
- * 3. 输入框得到焦点时隐藏错误信息
- */
- $(".input").focus(function() {
- var inputName = $(this).attr("name");
- $("#" + inputName + "Error").css("display", "none");
- });
- /*
- * 4. 输入框推动焦点时进行校验
- */
- $(".input").blur(function() {
- var inputName = $(this).attr("name");
- invokeValidateFunction(inputName);
- })
- });
- /*
- * 输入input名称,调用对应的validate方法。
- * 例如input名称为:loginname,那么调用validateLoginname()方法。
- */
- function invokeValidateFunction(inputName) {
- inputName = inputName.substring(0, 1).toUpperCase() + inputName.substring(1);
- var functionName = "validate" + inputName;
- return eval(functionName + "()");
- }
- /*
- * 校验登录名
- */
- function validateLoginname() {
- var bool = true;
- $("#loginnameError").css("display", "none");
- var value = $("#loginname").val();
- if(!value) {// 非空校验
- $("#loginnameError").css("display", "");
- $("#loginnameError").text("用户名不能为空!");
- bool = false;
- } else if(value.length < 3 || value.length > 20) {//长度校验
- $("#loginnameError").css("display", "");
- $("#loginnameError").text("用户名长度必须在3 ~ 20之间!");
- bool = false;
- }
- return bool;
- }
- /*
- * 校验密码
- */
- function validateLoginpass() {
- var bool = true;
- $("#loginpassError").css("display", "none");
- var value = $("#loginpass").val();
- if(!value) {// 非空校验
- $("#loginpassError").css("display", "");
- $("#loginpassError").text("密码不能为空!");
- bool = false;
- } else if(value.length < 3 || value.length > 20) {//长度校验
- $("#loginpassError").css("display", "");
- $("#loginpassError").text("密码长度必须在3 ~ 20之间!");
- bool = false;
- }
- return bool;
- }
- /*
- * 校验验证码
- */
- function validateVerifyCode() {
- var bool = true;
- $("#verifyCodeError").css("display", "none");
- var value = $("#verifyCode").val();
- if(!value) {//非空校验
- $("#verifyCodeError").css("display", "");
- $("#verifyCodeError").text("验证码不能为空!");
- bool = false;
- } else if(value.length != 4) {//长度不为4就是错误的
- $("#verifyCodeError").css("display", "");
- $("#verifyCodeError").text("错误的验证码!");
- bool = false;
- } else {//验证码是否正确
- $.ajax({
- cache: false,
- async: false,
- type: "POST",
- dataType: "json",
- data: {method: "ajaxValidateVerifyCode", verifyCode: value},
- url: "/goods/UserServlet",
- success: function(flag) {
- if(!flag) {
- $("#verifyCodeError").css("display", "");
- $("#verifyCodeError").text("错误的验证码!");
- bool = false;
- }
- }
- });
- }
- return bool;
- }</span>
例子3
用户修改密码校验
用户修改密码jsp
- <%@ page language="java" import="java.util.*" pageEncoding="UTF-8"%>
- <%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>
- <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
- <html>
- <head>
- <title>pwd.jsp</title>
- <meta http-equiv="pragma" content="no-cache">
- <meta http-equiv="cache-control" content="no-cache">
- <meta http-equiv="expires" content="0">
- <meta http-equiv="keywords" content="keyword1,keyword2,keyword3">
- <meta http-equiv="description" content="This is my page">
- <!--
- <link rel="stylesheet" type="text/css" href="styles.css">
- -->
- <link rel="stylesheet" type="text/css" href="<c:url value='/css/css.css'/>">
- <link rel="stylesheet" type="text/css" href="<c:url value='/jsps/css/user/pwd.css'/>">
- <script type="text/javascript" src="<c:url value='/jquery/jquery-1.5.1.js'/>"></script>
- <script type="text/javascript" src="<c:url value='/jsps/js/user/pwd.js'/>"></script>
- <script src="<c:url value='/js/common.js'/>"></script>
- </head>
- <body>
- <div class="div0">
- <span>修改密码</span>
- </div>
- <div class="div1">
- <form action="<c:url value='/UserServlet'/>" method="post" target="_top">
- <input type="hidden" name="method" value="updatePassword"/>
- <table>
- <tr>
- <td><label class="error">${msg }</label></td>
- <td colspan="2"> </td>
- </tr>
- <tr>
- <td align="right">原密码:</td>
- <td><input class="input" type="password" name="loginpass" id="loginpass" value="${user.loginpass }"/></td>
- <td><label id="loginpassError" class="error"></label></td>
- </tr>
- <tr>
- <td align="right">新密码:</td>
- <td><input class="input" type="password" name="newpass" id="newpass" value="${user.newpass }""/></td>
- <td><label id="newpassError" class="error"></label></td>
- </tr>
- <tr>
- <td align="right">确认密码:</td>
- <td><input class="input" type="password" name="reloginpass" id="reloginpass" value="${user.reloginpass }""/></td>
- <td><label id="reloginpassError" class="error"></label></td>
- </tr>
- <tr>
- <td align="right"></td>
- <td>
- <img id="vCode" src="<c:url value='/VerifyCodeServlet'/>" border="1"/>
- <a href="javascript:_change();">看不清,换一张</a>
- </td>
- </tr>
- <tr>
- <td align="right">验证码:</td>
- <td>
- <input class="input" type="text" name="verifyCode" id="verifyCode" value="${user.verifyCode }""/>
- </td>
- <td><label id="verifyCodeError" class="error"></label></td>
- </tr>
- <tr>
- <td align="right"></td>
- <td><input id="submit" type="submit" value="修改密码"/></td>
- </tr>
- </table>
- </form>
- </div>
- </body>
- </html>
用户修改密码校验js
- $(function() {
- /*
- * 1. 给注册按钮添加submit()事件,完成表单校验
- */
- $("#submit").submit(function(){
- $("#msg").text("");
- var bool = true;
- $(".input").each(function() {
- var inputName = $(this).attr("name");
- if(!invokeValidateFunction(inputName)) {
- bool = false;
- }
- });
- return bool;
- });
- /*
- * 3. 输入框推动焦点时进行校验
- */
- $(".input").blur(function() {
- var inputName = $(this).attr("name");
- invokeValidateFunction(inputName);
- });
- });
- /*
- * 输入input名称,调用对应的validate方法。
- * 例如input名称为:loginname,那么调用validateLoginname()方法。
- */
- function invokeValidateFunction(inputName) {
- inputName = inputName.substring(0, 1).toUpperCase() + inputName.substring(1);
- var functionName = "validate" + inputName;
- return eval(functionName + "()");
- }
- /*
- * 校验密码
- */
- function validateLoginpass() {
- var bool = true;
- $("#loginpassError").css("display", "none");
- var value = $("#loginpass").val();
- if(!value) {// 非空校验
- $("#loginpassError").css("display", "");
- $("#loginpassError").text("密码不能为空!");
- bool = false;
- } else if(value.length < 3 || value.length > 20) {//长度校验
- $("#loginpassError").css("display", "");
- $("#loginpassError").text("密码长度必须在3 ~ 20之间!");
- bool = false;
- });
- return bool;
- }
- // 校验新密码
- function validateNewpass() {
- var bool = true;
- $("#newpassError").css("display", "none");
- var value = $("#newpass").val();
- if(!value) {// 非空校验
- $("#newpassError").css("display", "");
- $("#newpassError").text("新密码不能为空!");
- bool = false;
- } else if(value.length < 3 || value.length > 20) {//长度校验
- $("#newpassError").css("display", "");
- $("#newpassError").text("新密码长度必须在3 ~ 20之间!");
- bool = false;
- }
- return bool;
- }
- /*
- * 校验确认密码
- */
- function validateReloginpass() {
- var bool = true;
- $("#reloginpassError").css("display", "none");
- var value = $("#reloginpass").val();
- if(!value) {// 非空校验
- $("#reloginpassError").css("display", "");
- $("#reloginpassError").text("确认密码不能为空!");
- bool = false;
- } else if(value != $("#newpass").val()) {//两次输入是否一致
- $("#reloginpassError").css("display", "");
- $("#reloginpassError").text("两次密码输入不一致!");
- bool = false;
- }
- return bool;
- }
- /*
- * 校验验证码
- */
- function validateVerifyCode() {
- var bool = true;
- $("#verifyCodeError").css("display", "none");
- var value = $("#verifyCode").val();
- if(!value) {//非空校验
- $("#verifyCodeError").css("display", "");
- $("#verifyCodeError").text("验证码不能为空!");
- bool = false;
- } else if(value.length != 4) {//长度不为4就是错误的
- $("#verifyCodeError").css("display", "");
- $("#verifyCodeError").text("错误的验证码!");
- bool = false;
- } else {//验证码是否正确
- $.ajax({
- cache: false,
- async: false,
- type: "POST",
- dataType: "json",
- data: {method: "ajaxValidateVerifyCode", verifyCode: value},
- url: "/goods/UserServlet",
- success: function(flag) {
- if(!flag) {
- $("#verifyCodeError").css("display", "");
- $("#verifyCodeError").text("错误的验证码!");
- bool = false;
- }
- }
- });
- }
- return bool;
- }
js经典校验之注册与登录校验的更多相关文章
- 【koa2】用户注册、登录校验与加盐加密
加密与解密 先介绍一下关于服务端用户名跟密码的存储状态,我们知道当前端在注册一个新用户时,会在表单内填入用户名和密码,并通过post请求提交到服务器,服务器再把用户名和密码从ctx.request.b ...
- Spring Security 登录校验 源码解析
传统情况下,在过滤器中做权限验证,Spring Secuirty也是在Filter中进行权限验证. 创建并注册过滤器 package com.awizdata.edubank.config; impo ...
- vue.js基础知识篇(7):表单校验详解
目录 网盘 第12章:表单校验 1.npm安装vue-validator $ npm install vue-validator 代码示例: var Vue=require("vue&quo ...
- JavaWeb_day02_登录校验_查询所有员工信息_DeBug
本文为博主辛苦总结,希望自己以后返回来看的时候理解更深刻,也希望可以起到帮助初学者的作用. 转载请注明 出自 : luogg的博客园 谢谢配合! WEB_day02 servlet 协议转对象 服务器 ...
- 原生js验证简洁美观注册登录页面
序 一个以js验证表单的简洁的注册登录页面,不多说直接上图 效果 主要文件 完整代码 sign_up.html 注册表单 <!DOCTYPE html> <html lang=&qu ...
- Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
vee-validate 是为 Vue.js 量身打造的表单校验框架,允许您校验输入的内容并显示对应的错误提示信息.它内置了很多常见的校验规则,可以组合使用多种校验规则,大部分场景只需要配置就能实现开 ...
- MVC登录校验
利用MVC自带的过滤器可现实简单的登录校验 在项目目录下创建一个BaseController控制器,让需要验证的控制器继承这个BaseController 需要让BaseController继承Con ...
- vue-router登录校验后跳转到之前指定页面如何实现
两个需求:1.用户点击购买需要下单,并跳转到订单页面,但是如果用户没有登录的话,中间有登录验证,会拦截:2.点击购买的时候,登录校验成功了,跳转到订单页面时,订单已创建,去付款即可.3.处理拦截至登录 ...
- node.js+mysql用户的注册登录验证
下面代码实现的功能是:用node.js连接mysql实现用户的注册和登录,这里主要实现的是后端的验证代码,前端显示部分没具体写出. 整个程序的流程是这样的: 1.首先建立数据库reji,数据表user ...
随机推荐
- Extjs4 desktop 图标自动换行,横纵排列 图标大小修改
一.图标换行 /*! * Ext JS Library 4.0 * Copyright(c) 2006-2011 Sencha Inc. * licensing@sencha.com * http:/ ...
- MS-coco数据集下载及使用(转)
先做个标记,改天研究下. 几个链接: MS coco数据集介绍及下载 Microsoft COCO 数据集 COCO Dataset 数据特点 COCO 数据集的使用
- 表单修饰符.lazy.number.trim
<!DOCTYPE html> <html lang="zh"> <head> <title></title> < ...
- HTML 项目符号
无序符号 <ul> <li> </li> <li> </li> <li> </li> </ul> 属性 ...
- topology进程结束会不会关闭数据库连接
测试环境:redhat,oracle 11.2.0.3.0 测试目标:当java进程关闭之后,进程的数据库连接会不会被释放,何时被释放 实验证明:在运行topology前,执行 select coun ...
- java基础之二维数组不定义列数
有一种特殊的二维数组,它的行数确定,但是每行的列数不确定.这样的的数组实现方法:先创建制定行数,列数缺省的二维数组,然后对数组的每一行重新初始化.举例如下: package day5; //第二种定义 ...
- 【机器学习】机器学习入门01 - kNN算法
0. 写在前面 近日加入了一个机器学习的学习小组,每周按照学习计划学习一个机器学习的小专题.笔者恰好近来计划深入学习Python,刚刚熟悉了其基本的语法知识(主要是与C系语言的差别),决定以此作为对P ...
- 新浪新闻API
新浪新闻API ustcmio 关注 2017.01.15 20:44* 字数 536 阅读 2479评论 2喜欢 7 新浪新闻的API:1.访问手机新浪网https://sina.cn/?from= ...
- Cesium官方教程5--地形图层
原文地址:https://cesiumjs.org/tutorials/Terrain-Tutorial/ Cesium支持渐进流式加载和渲染全球高精度地形,并且包含海.湖.河等水面效果.相对2D地图 ...
- PAT甲级——A1028 List Sorting
Excel can sort records according to any column. Now you are supposed to imitate this function. Input ...