修改页面
修改按钮
var editBtn = $("<a href='${ctx}/emp/" + item.id + "' target='_blank'>编辑</a>");
与之前的逻辑一样。
@RequestMapping("/emp/{id}")
public String update(@PathVariable Long id, Model model) {
Emp emp = empService.getEmp(id);
model.addAttribute("emp", emp);
List<Dept> depts = deptService.getAll();
model.addAttribute("depts", depts);
return "update";
}
修改页面的变化:
修改功能
点击【更新】通过Ajax请求完成修改操作。
$(function () {
//更新事件
$("#update").click(function () {
$.ajax({
url: "${ctx}/emp/${emp.id}",
data: $("form").serialize(),
type: "put",
success: function (result) {
//100表示处理成功
if (result.code == 100) {
alert(result.msg);
window.opener.location.reload();//刷新父窗口
window.close();//关闭当前窗口
}
//200表示处理失败
else if (result.code == 200) {
$.each(result.data.errors, function (index, item) {
$("#errors").text(item.defaultMessage);
});
}
}
});
});
});
@ResponseBody
@RequestMapping(value = "/emp/{id}", method = RequestMethod.PUT)
public Msg update(@Valid Emp emp,BindingResult result) {
if(result.hasErrors()){
List<FieldError> errors = result.getFieldErrors();
return Msg.fail().add("errors", errors);
}else{
empService.update(emp);
return Msg.success();
}
}