实现datagrid的批量删除事件,首先要给其添加一个CheckBox,实现jsp页面的设计
//这里写了个单元格formatter(格式化器)函数去获得当前选中行的所有信息;
操作
1
2
3
4
接下来通过JS来实现删除的点击事件
var formatOper = function(val, row, index) {
'删除';//对单元格函数进行定义与样式设计;
}
1
2
3
//实现formatter定义的删除点击事件;
remove : function(id){
var ids = [];
if(typeof id !=="undefined"){
ids.push(id);
}else{
var Obj = $('#dataGrid').datagrid('getChecked');//获得选中行数据;
if(planObj.length === 0){
$.messager.alert("删除错误", "请至少选择一条记录!", 'error');
return;
}
for(var i = 0;i< Obj.length;i++){
ids.push(planObj[i].id);
}
}if(ids.length > 0){
$.messager.confirm("提示","确定要删除此条信息",function(r){
if (r){
Loading.start();
$.ajax({
url: 'url',
data : {
ids : ids.join(",") //加个逗号,分割id;
},
success: function(result) {},
error: function(result) {}
});
}
}
}
}
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
当jsp与js设计完成后,就要通过后台接收id,并将其删除:
if (StringUtil.isNotEmpty(ids)) {
String[] idArr = ids.split(",");
boolean f = false;
for (String id : idArr) {
f = service.deleteById(Integer.valueOf(id));
}
}
1
2
3
4
5
6
7
//通过以上简单的三步就完成了datagrid的批量删除操作。