SSM整合04_改删
程序开发
2023-09-15 17:50:56
修改
点击编辑->弹出修改模态框->点击更新,完成数据修改。
点击修改弹出模态框
var editBtn = $("").addClass("btn btn-primary btn-sm edit_btn").append($("").addClass("glyphicon glyphicon-pencil")).append("编辑");var delBtn = $("").addClass("btn btn-danger btn-sm delete_btn").append($("").addClass("glyphicon glyphicon-trash")).append("删除");
分别为edit_btn和delete_btn
$(".edit_btn").click(function () {alert("绑定成功")})
因为创建按钮之前就绑定了click事件,所以绑定不上,
解决方法:1.在创建按钮的时候绑定2.绑定点击.live(),jquery中的一个方法,可以为后来的元素绑定方法,即使是后面添加也可以绑定上。jquery新版没有live方法,而是使用了on方法进行替代
$(document).on("click",".edit_btn",function () {//查出员工信息,在模态框中显示//查出部门信息,在下拉框中显示getDepts("#empUpdateModel select");//用于填充下拉框$("#empUpdateModel").modal({backdrop: "static"})})
为了查询员工的属性,在创建员工editBtn的时候给editBtn创建一个属性
//为编辑按钮添加一个自定义属性,标识员工id
editBtn.attr("edit-id",item.empId);
修改绑定事件的方法
$(document).on("click",".edit_btn",function () {//查出部门信息,在下拉框中显示getDepts("#empUpdateModel select");//查出员工信息,在模态框中显示getEmp($(this).attr("edit-id"));$("#empUpdateModel").modal({backdrop: "static"})})function getEmp(id){$.ajax({url:"${APP_PATH}/emp/"+id,type:"GET",success:function (result) {var empData = result.extend.emp;$("#empName_update_static").text(empData.empName);$("#email_update_input").val(empData.email);$("#empUpdateModel input[name=gender]").val([empData.gender]);$("#empUpdateModel select").val([empData.dId]);}});}
/**查询员工数据*/@RequestMapping(value = "/emp/{id}",method = RequestMethod.GET)@ResponseBodypublic Msg getEmp(@PathVariable("id") Integer id){Emp emp = empService.getEmp(id);return Msg.succezz().add("emp",emp);}
public Emp getEmp(Integer id) {Emp emp = empMapper.selectByPrimaryKey(id);return emp;}
更新功能实现
//点击更新,更新员工信息$("#emp_update_btn").click(function () {//验证邮箱是否合法var email = $("#email_update_input").val();var regEmail = /^([a-zA-Z0-9_-])+@([a-zA-Z0-9_-])+(.[a-zA-Z0-9_-])+/if(!regEmail.test(email)){alert("邮箱格式非法");return false;}//发送ajax请求保存更新后的员工数据$.ajax({url:"${APP_PATH}/emp/"+$(this).attr("edit-id"),type:"POST",data:$("#empUpdateModel form").serialize()+"&_method=PUT",success:function (result) {//关闭对话框$("#empUpdateModel").modal("hiden");//回到本页面to_page(currentPage);}})})
/** 更新员工*/@RequestMapping(value = "/emp/{empId}",method = RequestMethod.PUT)@ResponseBodypublic Msg updateEmp(Emp emp){empService.updateEmp(emp);return Msg.succezz();}
public void updateEmp(Emp emp) {empMapper.updateByPrimaryKeySelective(emp);}
if(!getConnector().isParseBodyMethod(getMethod())){success = true;return;
}
isParseBodyMethod事务源码
protected boolean isParseBodyMethod(String method){return parseBodyMethodSet.contains(method);
}
parseBodyMethodSet实际上默认就是POST。
FormContentFilter org.springframework.web.filter.FormContentFilter FormContentFilter /*
他的作用,将请求体中的数据解析包装成为一个map,request.getParameter被重写,就会从自己封装的map中取数据
标签:
上一篇:
还在安装双系统? 试试 Windows 和 Linux 合体
下一篇:
相关文章
-
无相关信息