用户找回密码功能JS验证邮箱通过点击下一步隐藏邮箱输入框并修改下一步按钮的ID
//这里是BaseDao
/**
* 获得一个对象
* @param hql
* @param param
* @return
*/
public Object get(String hql, Object[] param){
List<Object> objects = this.getHibernateTemplate().find(hql, param);
if (objects != null && objects.size() > 0) {
return objects.get(0);
} else {
return null;
}
}
//这里是UsersDaoImpl
/**
* 查找邮箱返回数量
*/
public Integer CheckEmail(String email) {
StringBuilder sb=new StringBuilder();
sb.append("Select count(*) From Users where email='");
if(StringUtils.isNotBlank(email)){
sb.append(email);
}
sb.append("'");
Long s=(Long) super.getCount(sb.toString());
return s.intValue();
} /**
* 根据邮箱查看返回一个对象
*/
public Users FindByEmail(String email) {
String hql = "From Users where email =?";
return (Users) super.get(hql, new Object[]{email});
} /**
* 修改密码
*/
public void UpdatePassByEmail(Users user) {
super.Update(user); }
//这里是UserAction
public String checkEmail() throws IOException{
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
message = "邮箱不存在";
if(StringUtils.isNotBlank(email)){
Integer count=userBiz.CheckEmail(email);
if(count<=0){
message="邮箱不存在";
}else{
message="";
}
}
out.print(message);
out.flush();
out.close();
return SUCCESS;
}
public String UpdatePassByEmail() throws IOException{
HttpServletResponse response = ServletActionContext.getResponse();
response.setContentType("text/html;charset=UTF-8");
PrintWriter out = response.getWriter();
message = "修改失败";
boolean falg=false;
if(StringUtils.isNotBlank(email)){
if(StringUtils.isNotBlank(Password)){
if(StringUtils.isNotBlank(sure_password)){
if(!sure_password.equals(Password)){
falg=false;
message="密码不一致";
}else{
Users u=userBiz.FindByEmail(email);
u.setPassword(MD5Util.EncryptionMD5(sure_password));
userBiz.UpdatePassByEmail(u);
falg=true;
if(falg==true){
message="修改成功";
}else{
message="修改失败";
}
}
}
}
}
out.print(message);
out.flush();
out.close();
return SUCCESS;
}
//这里是HTML页面
<div id="login-content" class="clearfix">
<form method="post">
<fieldset id="filedset1">
<div class="control-group">
<label class="control-label" for="email">请输入注册时的邮箱</label>
<div class="controls">
<input type="text" name="email" id="email"
onblur="Onblur()" />
</div>
<span style="color: red" id="message"></span>
</div>
</fieldset>
<fieldset id="filedset2" hidden="hidden">
<div class="control-group">
<label class="control-label" for="password">Password</label>
<div class="controls">
<input type="password" name="Password" id="password" onblur="RepassOnblur()"/>
</div>
</div>
<div class="control-group">
<label class="control-label" for="sure_password">Sure_Password</label>
<div class="controls">
<input type="password" name="sure_password" id="sure_password" onblur="RepassOnblur()"/>
</div>
<span style="color: red" id="messages"></span>
</div>
</fieldset>
<div class="pull-right">
<button type="button" id="Next" class="btn btn-warning btn-large">
下一步
</button>
</div>
</form>
</div>
//这里是JS代码
/**
* 这里是验证邮箱输入框事件
*/
function Onblur(){
var Email = $("#email").val();
var EmailReg = /^([a-zA-Z0-9_-]{1,11})@([a-zA-Z0-9]{2,4}|126|163|189)\.([a-zA-Z0-9]{2,3})$/; if (Email.length == 0) {
$("#message").html("邮箱不能为空");
$("#Next").attr("disabled",true);
return;
} else if (!EmailReg.test(Email)) {
$("#message").html("邮箱格式不正确 例:123456@126.com");
$("#Next").attr("disabled",true);
return;
} else {
$.ajax({
type:"POST",
dataType:"text",
url:"checkEmail",
data:{
"email":Email
},
success:function(data){ if(data==""){
$("#message").html("");
$("#Next").attr("disabled",false); }else{
$("#message").html(data);
$("#Next").attr("disabled",true);
}
},
error:function(){
alert("通讯有问题,请稍候尝试...");
}
}); }
} /**
* 点击下一步按钮事件
* 隐藏邮箱输入框,显示密码输入框
* 修改下一步按钮ID
*/
$(function(){
$("body").on("click","#Next",function(){
$("#filedset1").hide();
$("#filedset2").removeAttr("hidden");
$("#Next").attr("id","Fix");
}); $("body").on("click","#Fix",function(){
var Password = $("#password").val();
var SurePassword = $("#sure_password").val(); $.ajax({
type:"POST",
dataType:"text",
url:"UpdatePassByEmail",
data:{
"Password":Password,
"sure_password":SurePassword
},
success:function(data){
alert(data);
},
error:function(){
alert("通讯有问题,请稍候尝试...");
}
});
});
}); /**
* 验证密码输入框事件
*/
function RepassOnblur(){
var Password = $("#password").val();
var SurePassword = $("#sure_password").val(); if (Password.length == 0) {
$("#messages").html("密码不能为空");
$("#Fix").attr("disabled",true);
return false;
} else if (Password.length < 6 || Password.length > 16) {
$("#messages").html("密码长度小于6位或大于16位");
$("#Fix").attr("disabled",true);
return false;
} else {
$("#messages").html("");
$("#Fix").attr("disabled",true);
} if (SurePassword.length == 0) {
$("#messages").html("确认密码不能为空");
$("#Fix").attr("disabled",true);
return false;
} else if (SurePassword.length < 6 || SurePassword.length > 16) {
$("#messages").html("密码长度小于6位或大于16位");
$("#Fix").attr("disabled",true);
return false;
} else if (SurePassword != Password) {
$("#messages").html("密码不一致");
$("#Fix").attr("disabled",true);
return false;
} else {
$("#messages").html("");
$("#Fix").attr("disabled",false);
}
}
用户找回密码功能JS验证邮箱通过点击下一步隐藏邮箱输入框并修改下一步按钮的ID的更多相关文章
- javaWeb实现使用邮箱邮件找回密码功能
JSP+Jmail+JavaBean 发邮件(转)2010-08-23 18:052007年04月14日 14:32/* * SendMail.java * * Created on 2007年3月3 ...
- php邮箱找回密码功能
原理很简单: 用户找回密码的时候,填写用户名,程序得到用户名便可以去数据库取出用户对应的密码以及当时填写的邮箱, 根据用户名和密码生成一个key=md5(username+password),然后$s ...
- PHP会员找回密码功能的简单实现
文章来自:博客 http://www.jb51.net/article/91944.htm 设置思路 1.用户注册时需要提供一个E-MAIL邮箱,目的就是用该邮箱找回密码. 2.当用户忘记密码或用户名 ...
- 通过邮件找回密码功能的Java实现
1.有个需求就是,忘记密码后通过邮箱找回.现在的系统在注册的时候都会强制输入邮箱,其一目的就是 通过邮件绑定找回,可以进行密码找回.通过java发送邮件的功能我就不说了,重点讲找回密码. 2.参考别人 ...
- SpringMVC通过邮件找回密码功能的实现
1.最近开发一个系统,有个需求就是,忘记密码后通过邮箱找回.现在的系统在注册的时候都会强制输入邮箱,其一目的就是 通过邮件绑定找回,可以进行密码找回.通过java发送邮件的功能我就不说了,重点讲找回密 ...
- 记住密码功能 JS结合JQuery 操作 Cookie 实现记住密码和用户名!
// 记住密码功能 JS结合JQuery 操作 Cookie 实现记住密码和用户名! var username = document.getElementById("username&quo ...
- spring mvc下实现通过邮箱找回密码功能
1功能分析 通过spring mvc框架实现通过邮箱找回密码. 2 实现分析 主要是借助某个邮箱的pop3/smtp服务实现的邮件代发功能. 3 源码分析 3.1首先在用户表对应的javabean中加 ...
- django项目中使用邮箱找回密码功能
本文使用qq邮箱,需要登录邮箱,在设置-账户里面开启SMTP服务,要记下授权码 前端html {#找回密码的表单#} <form action="" method=" ...
- Android找回密码功能 手机找回、邮箱找回
找回密码功能设计:https://blog.csdn.net/qq_33472765/article/details/82287404?utm_source=blogxgwz0 手机找回:https: ...
随机推荐
- 编译Kubelet二进制文件
1. 环境 系统:CentOS 7.2 Go:1.10.3 Kubernetes:1.10.4 2. 安装最新版go 编译的Kubernetes 1.10.4要求go版本在1.9.3以上,使用下面的y ...
- datagrid的修改和删除功能的实现
1.修改 双击,进入一行的编辑状态的功能的实现 2.删除 3.扩展easyui的datagrid,添加动态增加或删除Editor的方法 (1)背景要求: 对于某一列,比如密码,动态增加时候,是可以编辑 ...
- python学习-- django 2.1.7 ajax 请求 进阶版
#原来版本 $.get("/add/",{'a':a,'b':b}, function(ret){ $('#result').html(ret)}) #进阶版 $.get(&qu ...
- thinkphp3.2.3多图上传并且生成多张缩略图
html部分 <!DOCTYPE html><html><head><meta http-equiv="Content-Type" con ...
- 10 Java 对象的内存布局
Java 创建对象的方式 1:new 语句和反射机制创建.该方式会调用类的构造器,同时满足诸多约束.如果一个类没有构造器的话,Java 编译器会自动添加一个无参数的构造器.子类的构造器需要调用父类的构 ...
- html之表单标签
表单标签的属性: 用于向服务器传输数据 表单能够包含input元素,比如文本字段,复选框,单选框,提交按钮等等 表单还可以包含textarea(简介之类的),select(下拉),fieldset和l ...
- [转]Linux 技巧:让进程在后台可靠运行的几种方法
转自: https://www.ibm.com/developerworks/cn/linux/l-cn-nohup/index.html 我们经常会碰到这样的问题,用 telnet/ssh 登录了远 ...
- Hibernate命名策略及配置
hibernate 表 命名策略 分类: hibernate2013-02-27 18:46464人阅读评论(0)收藏举报 Hibernate注释下的自定义架构实 ...
- 习题:最短路计数(SPFA最短路计数)
最短路计数(洛谷1144)题目描述 给出一个N个顶点M条边的无向无权图,顶点编号为1-N.问从顶点1开始,到其他每个点的最短路有几条.输入输出格式输入格式:输入第一行包含2个正整数N,M,为图的顶点数 ...
- 【bzoj4127】Abs 树链剖分+线段树
题目描述 给定一棵树,设计数据结构支持以下操作 1 u v d 表示将路径 (u,v) 加d 2 u v 表示询问路径 (u,v) 上点权绝对值的和 输入 第一行两个整数n和m,表示结点个数和操作数 ...