使用ajax请求,模态框调用并更改密码
前端页面
<a href="javascript:void(0);" onclick="changPassword()">
<i class="ace-icon fa fa-cog"></i>
修改密码
</a>
<script type="text/javascript">
//打开模态框
function changPassword(){
$("#navbar_edit").modal({
backdrop :'static'
});
}
</script>
<#include "/include/navbar_edit.html">
<!-- 模态框(Modal) -->
<div class="modal fade" id="navbar_edit" tabindex="-1" role="dialog"
aria-labelledby="roleEditLabel" aria-hidden="true">
<div class="modal-dialog" style="width:500px;">
<div class="modal-content">
<div class="modal-header">
<button type="button" class="close" data-dismiss="modal">×</button>
<h4 class="modal-title" id="roleEditLabel">修改密码</h4>
</div>
<div class="modal-body">
<div style="width:90%;">
<form class="form-horizontal" id="navbar_pwd_reset">
<div class="form-group">
<label class="col-sm-4 control-label" for="old_password">旧密码:</label>
<div class="col-sm-8" style="padding:0">
<input class="col-sm-12" type="password" id="old_password"
name="old_password" placeholder="请输入旧密码 " />
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" for="new_password">新密码:</label>
<div class="col-sm-8" style="padding:0">
<input class="col-sm-12" type="password" id="new_password"
name="new_password" placeholder="请输入新密码 " />
</div>
</div>
<div class="form-group">
<label class="col-sm-4 control-label" for="confirm_password">确认新密码:</label>
<div class="col-sm-8" style="padding:0">
<input class="col-sm-12" type="password" id="confirm_password"
name="confirm_password" placeholder="确认新密码 " />
</div>
</div>
</form>
</div>
</div>
<div class="modal-footer">
<button type="button" class="btn btn-xs btn-default"
data-dismiss="modal" id="navbar_close_btn">
<i class="ace-icon fa fa-times bigger-110"></i> <span
class="bigger-110 no-text-shadow">关闭</span>
</button>
<button type="button" class="btn btn-xs btn-primary" id="navbar_save_btn">
<i class="ace-icon fa fa-floppy-o bigger-110"></i> <span
class="bigger-110 no-text-shadow">保存</span>
</button>
</div>
</div>
<!-- /.modal-content -->
</div>
<!-- /.modal -->
</div>
<script type="text/javascript">
$("#navbar_edit").on("show.bs.modal", function() {
$("#navbar_edit #navbar_pwd_reset").formClear();
});
$("#navbar_edit").on("hidden.bs.modal", function() {
$(this).removeData("bs.modal");
});
$(document).on("click", "#navbar_save_btn", function(e) {
var old_psd = $("#navbar_pwd_reset #old_password").val();
var new_psd = $("#navbar_pwd_reset #new_password").val();
var con_psd = $("#navbar_pwd_reset #confirm_password").val();
//alert(old_psd);
//alert(new_psd);
//alert(con_psd);
if (old_psd == "" || new_psd == "" || con_psd == "") {
bootbox.alert("相关字段不为空,请输入!");
return false;
};
if (old_psd == new_psd) {
bootbox.alert("旧密码和新密码相同,请重新输入!");
return false;
};
if (new_psd != con_psd) {
bootbox.alert("两次输入新密码不相同,请重新输入!");
return false;
};
var params = $("#navbar_pwd_reset").serialize();
//alert(params);
$.ajax({
cache : true,
type : "POST",
url : "${ctx!}/modifyPassword",
data : params,
async : false,
error : function(request) {
bootbox.alert("服务器连接错误,请稍后再试");
},
success : function(data) {
if (SQ.isOK(data)) {
bootbox.alert("重置成功", function() {
$("#navbar_close_btn").click();
});
} else {
bootbox.alert("重置失败:" + SQ.getMessage(data));
}
},
});
});
</script>
后端页面
public void modifyPassword() {
BasMember sysUser = this.getLoginUser();
if (sysUser == null || sysUser.getInt(BasMember.IsDelete).equals(1)) {
render(new JsonRender(new AjaxResult(Constants.RESPONSE_STATUS_FAIL, "会话已过期,请重新登录!")).forIE());
return;
}
// 旧秘密
String password = getPara("old_password");
password = CommonUtil.getEncryptedPwd(password);
if (!password.equals(sysUser.get(BasMember.Password))) {
render(new JsonRender(new AjaxResult(Constants.RESPONSE_STATUS_FAIL, "旧密码不正确!")).forIE());
return;
}
// 新密码
password = getPara("new_password");
password = CommonUtil.getEncryptedPwd(password);
// 赋值
sysUser.set(BasMember.Password, password);
sysUser.set(BasMember.ModifyBy, this.getLoginId());
sysUser.set(BasMember.ModifyTime, StringUtil.getNowTime());
if (!sysUser.update()) {
render(new JsonRender(new AjaxResult(Constants.RESPONSE_STATUS_FAIL, "修改时出现异常")).forIE());
}
render(new JsonRender(new AjaxResult(Constants.RESPONSE_STATUS_OK, "修改成功!")).forIE());
}
使用ajax请求,模态框调用并更改密码的更多相关文章
- Ajax技术使用之ajax与模态框结合的妙用
Ajax技术使用之ajax与模态框结合的妙用 要求: 使用ajax的方式提交数据:https://www.cnblogs.com/-wenli/p/10470063.html 使用模态框完成增加数据, ...
- ajax+json模态框中分页(spring+struts+mybatis+easyui分页插件)
0.业务需求: 点击每个数字的时候可以显示每个对应的详细记录.也就是得点击11的时候拿着开采部与C级去查询.
- ajax请求,html调用js
1:html中调用js中的函数,js使用ajax请求向后台请求,返回数据. <!DOCTYPE html> <html lang="en"> <hea ...
- ajax 请求发出了,数据更改了,但是没进入success 函数 把success 换成 complete
$(function(){ $(document).on('tap','.w-location-group .mui-table-view-cell',function(){ var bool = $ ...
- jQuery delegate方法实现Ajax请求绑定事件不丢失
给元素绑定click事件后 ,遇到一个问题:当执行一些ajax请求,再次调用此页面,里面的这个click事件就失效了 比如说:我的分页是一个ajax请求 但我点下一页时 后生成的元素a就没有了clic ...
- Ajax请求过程中显示“进度”的简单实现
Ajax在Web应用中使用得越来越频繁.在进行Ajax调用过程中一般都具有这样的做法:显示一个GIF图片动画表明后台正在工作,同时阻止用户操作本页面(比如Ajax请求通过某个按钮触发,用户不能频繁点击 ...
- Ajax发送请求等待时弹出模态框等待提示
主要的代码分为两块,一个是CSS定义模态框,另一个是在Ajax中弹出模态框. 查看菜鸟教程中的模态框教程demo,http://www.runoob.com/try/try.php?filename= ...
- bootstrap模态框动态赋值, ajax异步请求数据后给id为queryInfo的模态框赋值并弹出模态框(JS)
/查询单个 function query(id) { $.ajax({ url : "/small/productServlet", async : true, type : &q ...
- bootstrap通过ajax请求JSON数据后填充到模态框
1. JSP页面中准备模态框 <!-- 详细信息模态框(Modal) --> <div> <div class="modal fade" id=& ...
随机推荐
- STM32全球唯一ID读取方法
产品唯一的身份标识非常适合:● 用来作为序列号(例如USB字符序列号或者其他的终端应用)● 用来作为密码,在编写闪存时,将此唯一标识与软件加解密算法结合使用,提高代码在闪存存储器内的安全性.● 用来激 ...
- MySQL 性能优化的最佳20多条经验分享[转]
今天,数据库的操作越来越成为整个应用的性能瓶颈了,这点对于Web应用尤其明显.关于数据库的性能,这并不只是DBA才需要担心的事,而这更是我们程序员需要去关注的事情. 当我们去设计数据库表结构, ...
- json数据交换
1.1 为什么要进行json数据交互 json数据格式在接口调用中.html页面中较常用,json格式比较简单,解析还比较方便. 比如:webservice接口,传输json数据. 1.2 s ...
- Makefile 如何轻松搞定
最近在学习Linux下的C编程,买了一本叫<Linux环境下的C编程指南>读到makefile就越看越迷糊,可能是我的理解能不行. 于是google到了以下这篇文章.通俗易懂.然后把它贴出 ...
- Device ID
参考文章 一.CFUUID (Deprecated) 二.UDID (Deprecated) 三.NSUUID (ios6.0 and later) NSString *uuid = [[NSUUID ...
- useful tools, excel import mysql,swagger
http://www.th7.cn/Program/java/201602/765943.shtml------swagger http://blog.csdn.net/csfreebird/arti ...
- wget ftp
今天操作远端机器的时候发现少一个安装包, 需要传到对方的机器上,还能使用通过的老办法,直接SSH连上去了,发现传的很慢, 只有40K的样子, 看时间还需要二个多小时就有点受不了了.想想有一台FTP服务 ...
- Div自适应高度的方法
http://www.yutheme.cn/website/index.php/content/view/39/63.html div高度自适应是个比较麻烦的问题,在朋友artery那里看到这个文章, ...
- gtd好文两篇收藏
http://www.jianshu.com/p/bf5e8a9761f5 http://blog.sina.com.cn/s/blog_4e0f66b80100m73i.html
- Java进程间通信
传统的进程间通信的方式有大致如下几种: (1) 管道(PIPE) (2) 命名管道(FIFO) (3) 信号量(Semphore) (4) 消息队列(MessageQueue) (5) ...