用户找回密码功能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: ...
随机推荐
- 748. Shortest Completing Word
https://leetcode.com/problems/shortest-completing-word/description/ class Solution { public: string ...
- Fliptile POJ - 3279 (开关问题)
Fliptile Time Limit: 2000MS Memory Limit: 65536K Total Submissions: 16483 Accepted: 6017 Descrip ...
- Nordic Collegiate Programming Contest (NCPC) 2016
A Artwork B Bless You Autocorrect! C Card Hand Sorting D Daydreaming Stockbroker 贪心,低买高卖,不要爆int. #in ...
- WPF学习笔记(8):DataGrid单元格数字为空时避免验证问题的解决
原文:WPF学习笔记(8):DataGrid单元格数字为空时避免验证问题的解决 如下图,在凭证编辑窗体中,有的单元格不需要数字,但如果录入数字后再删除,会触发数字验证,单元格显示红色框线,导致不能执行 ...
- HDU 3848 CC On The Tree 树形DP
题意: 给出一棵边带权的树,求距离最近的一对叶子. 分析: 通过DFS计算出\(min(u)\):以\(u\)为根的子树中最近叶子到\(u\)的距离. 然后维护一个前面子树\(v_i\)中叶子到\(u ...
- 了解Windows Server以及Hyper-V许可模式
在2015年11月,微软宣布对Windows Server 2016以及Hyper-V的许可模式进行重大变更,并于2016年第三季度正式生效,Windows Server 2016标准版及数据中心版的 ...
- 极简Node教程-七天从小白变大神(二:中间件是核心)
当我们只引入express时,前述的那些功能都是没有启用的.那么,如何将这些功能添加进来呢?express通过其中间件机制实现了这些功能的管理.每一个中间件对应一个功能,而中间件可以是第三方库,也可以 ...
- 设计模式之第19章-中介者模式(Java实现)
设计模式之第19章-中介者模式(Java实现) “测试妹纸找你,你的代码出问题了.”“美工妹纸让你看看界面怎么样.”身为程序员总要和各种人打交道,但是如果再分为前端.后端工程师的话,那么关系就会错综复 ...
- php 实现栈与队列
<?php class queueOp{ /* * 队尾入队 * Return:处理之后队列的元素个数 */ public function tailEnquque($arr,$val){ re ...
- 使用jQuery ui创建模态表单
jQuery UI 是一个建立在 jQuery JavaScript 库上的小部件和交互库,可以使用它创建高度交互的 Web 应用程序. 在web页面的开发过程中,在添加元素的时候需要用到弹出窗口添加 ...