1、前端
1、1 新建一列并格式化列
value:字段值。 rowData:行记录数据。 rowIndex: 行索引。 |
{
field : 'tele',
title : '联系电话',
width : 100,
align : 'right'
},{ field :'-',
title:'操作',
formatter:function(value,row,index){
return '<a href="javascript:void(0)" onclick="del('+row.uuid+')">删除</a>';
}
1.2 当点击页面中的删除链接后,执行del方法,在该方法中首先进行判断是否点击了确定按钮,如果点击,则通过ajax将删除的信息提交到Actionn页面进行处理。
//删除
function del(uuid) {
$.messager.confirm("提示","确定要删除吗?",function(yes) {
if(yes) {
//点击确定按钮后,通过ajax将数据提交到后端进行删除
$.ajax({
url: 'dep_delete?id='+uuid,//提交数据到该地址
dataType: 'json',
type: 'post',
success:function(rtn){
$.messager.alert("提示",rtn.message,'info',function(){
//刷新表格数据
$('#grid').datagrid('reload');
});
}
});
}
});
}
注意提示框的用法: messager confirm(title, msg, fn)
显示一个包含“确定”和“取消”按钮的确认消息窗口。参数:
title:在头部面板显示的标题文本。
msg:显示的消息文本。
fn(b): 当用户点击“确定”按钮的时侯将传递一个true值给回调函数,否则传递一个false值。
代码示例
$.messager.confirm('确认对话框', '您想要退出该系统吗?', function(r){
if (r){
// 退出操作;
}
});
1.3 在Action页面中,注意id属性的注入,以及公共方法(ajaxReturn)的抽取
//注意属性注入
private long id;
public long getId() {
return id;
}
public void setId(long id) {
this.id = id;
}
/**删除
* @param id 页面传入的id号
*/
public void delete() {
try {
depBiz.delete(id);
ajaxReturn(true, "删除成功");
} catch (Exception e) {
e.printStackTrace();
ajaxReturn(false, "删除失败");
}
}
public void ajaxReturn(boolean success,String message) {
//返回前端的JSON数据
Map<String, Object> rtn = new HashMap<>();
rtn.put("success", success);
rtn.put("message", message);
write(JSON.toJSONString(rtn));
}
1.4 在具体实现的dao层,注意首先应该根据传入的id找到要删除的数据,(即让数据进入持久化状态)
/*
* 删除
*/
public void delete(Long uuid) {
//让对象进入持久化状态
Dep dep = this.getHibernateTemplate().get(Dep.class, uuid);
//执行删除操作
this.getHibernateTemplate().delete(dep);
}
|