一、批量删除
1、增加批量删除按钮
<a id="btn-batchDel" href="#" class="easyui-linkbutton" data-options="iconCls:'icon-search'">批量删除</a>
2、增加复选框;设置复选框的列
$('#dg').datagrid({
url:$("#ctx").val()+'/book.action?methodName=datagrid',
pagination:true,
fitColumns:true,
//设置复选框
checkbox:true,
toolbar: '#tb',
columns:[[
//增加复选框的列
{field:'ck',checkbox:true},
{field:'bid',title:'id',width:100},
{field:'bname',title:'名称',width:100},
{field:'price',title:'价格',width:100} ,
//datagrid中的列属性
{field:'操作',title:'操作',width:100,align:'right',formatter: function(value,row,index){
//οnclick="edit(); 添加修改事件
return '<a href="javascript:void(0);" οnclick="edit();">修改</a> <a href="javascript:void(0);" οnclick="del();">删除</a>';
}
}
]]
});
3、添加批量删除事件
//添加事件批量删除
$("#btn-batchDel").click(function() {
//datagrid控件(方法中的getSelections)获取对应所以的数据rows
var rows=$('#dg').datagrid('getSelections');
//console.log(rows);
var ids=new Array();
if(rows!=null&&rows.length>0){
for (var i in rows) {
//获得选中所以的bid
ids.push(rows[i].bid);
}
}
if(ids.length>0){
// alert(ids.join(","))
$.ajax({
//同时还要把bid带过去
url:$("#ctx").val()+'/book.action?methodName=dels&bids='+ids.join(","),
success:function(data){
//data成功返回1,失败返回0;
if(data==1){
//刷新数据表格
var row=$('#dg').datagrid('reload');
}
}
});
}
});
4、写到方法和web
①、到方法(与删除同用一个)
//删除
public void del(Book book) throws Exception {
String sql="delete from t_mvc_book where bid=?";
super.executeUpdate(sql, book, new String[] {"bid"});
}
②、BookAction
//批量删除
public String dels(HttpServletRequest req, HttpServletResponse resp) {
try {
String ids=req.getParameter("bids");
String id[]=ids.split(",");
for (String i : id) {
book.setBid(Integer.parseInt(i));
bd.del(book);
//1:是确认;0:是取消
ResponseUtil.writeJson(resp, 1);
}
} catch (Exception e) {
e.printStackTrace();
try {
ResponseUtil.writeJson(resp, 0);
} catch (Exception e1) {
e1.printStackTrace();
}
}
return null;
}
5、结果界面
①、选中删除
②、批量删除
结束了
掰掰