easyUI之增加删除与批量删除

 一、增加
1、添加一个增加按钮

 <a id="btn-add" href="#" class="easyui-linkbutton" data-options="iconCls:'icon-search'">增加</a>

 2、写增加的Dao方法及子控制器内的方法
 

public void add(Book book) throws Exception {
		book.setBid((int) new Date().getTime());
		super.executeUpdate("insert into t_mvc_book values(?,?,?)", book, new String[] { "bid", "bname", "price" });
	}
public String add(HttpServletRequest req, HttpServletResponse resp) {
		try {
			bookDao.add(book);
			ResponseUtil.writeJson(resp, 1);
		} catch (Exception e) {
			e.printStackTrace();
			try {
				ResponseUtil.writeJson(resp, 0);
			} catch (Exception e1) {
				// TODO Auto-generated catch block
				e1.printStackTrace();
			}
		}
		return null;
	}

3、在js文件中设置个值,用于方法的跳转

var addFlag=0;

 4、在js文件中添加增加的点击事件(清除表单数据,打开增加窗口)

$("#btn-add").click(function(){

// 清除表单数据

$('#ff').form('clear');

// 打开窗口

$("#dd").dialog("open");

// 设置值用于判断跳转方法

addFlag=1;

});

5.提交表单

function submitForm(){
	/*
	 * 点击确定按钮提交表单到后台,并且是新增/修改共用的一个方法
	 */
	//获取选择的数据
	var row=$('#dg').datagrid("getSelected");
    var href=null;
	if(addFlag == 2){
		href=$("#ctx").val()+'/book.action?methodName=edit';
	}else if(addFlag == 1){
		href=$("#ctx").val()+'/book.action?methodName=add';
	}
    $('#ff').form('submit', {
		url:href , 
		success: function(data){
		if(data == 1){
			$("#dd").dialog("close");
			$('#dg').datagrid('reload');
		}
		}
	});

}

结果:

 

 二、删除

1、datagrid中添加一列“删除”

{field:'操作',title:'操作',width:100,align:'right',formatter: function(value,row,index){

return '<a href="javascript:void(0);" οnclick="edit();">修改</a>  <a href="javascript:void(0);" οnclick="del();">删除</a>'

}

2、写删除的Dao方法及子控制器内的方法

public void del(Book book) throws Exception {
		
		super.executeUpdate("delete from t_mvc_book where bid=? ", book, new String[] { "bid"});
	}
public String del(HttpServletRequest req, HttpServletResponse resp) throws Exception {
		String s1 = req.getParameter("bids");
   //这个是批量删除		
        if(s1!=null) {
			String[] split = s1.split(",");
			for (int i = 0; i < split.length; i++) {
				book.setBid(Integer.parseInt(split[i]));
				bookDao.del(book);
			}
		}
//这个是删除
		bookDao.del(book);
		ResponseUtil.writeJson(resp, 1);
		ResponseUtil.writeJson(resp, 0);
		return null;
	}

3、增加删除的点击事件

function del(){
	var row=$('#dg').datagrid("getSelected");
	if(row){
		var id=row.bid;
		//messager不能向后台发送请求
		$.messager.confirm('确认','您确认想要删除记录吗?',function(r){    
		    if (r){    
		         $.ajax({
		        	url:$("#ctx").val()+'/book.action?methodName=del&bid='+id,
		        	success:function(data){
		        		if(data == 1){
		        			$('#dg').datagrid('reload');
		        		}
		        	}
		         });   
		    }    
		});  
	}else{
		alert("请选择需要删除的数据");
	}
}

结果:

 

三、批量删除 

1、从datagrid控件中选中添加复选框属性一列

 checkbox:true,

2、在界面给予一个批量删除的按钮

<a id="btn-batchDel" href="#" class="easyui-linkbutton" data-options="iconCls:'icon-search'">批量删除</a>

3、写批量删除的点击事件

 $("#btn-batchDel").click(function(){
		 var rows=$('#dg').datagrid("getSelections");
		 var ids=new Array();
		 if(rows !=null && rows.length > 0){
	    	 for(var i in rows){
	    		 ids.push(rows[i].bid);
	    	 }
	     } 
		 if(ids.length > 0){
			 $.ajax({
		        	url:$("#ctx").val()+'/book.action?methodName=del&bids='+ids.join(","),
		        	success:function(data){
		        		if(data == 1){
		        			$('#dg').datagrid('reload');
		        		}
		        	}
		         });  
		 }
	 });

4、子控制器调用dao方法中单个删除的方法,然后调用子控制器的批量删除

public String del(HttpServletRequest req, HttpServletResponse resp) throws Exception {
		String s1 = req.getParameter("bids");
   //这个是批量删除		
        if(s1!=null) {
			String[] split = s1.split(",");
			for (int i = 0; i < split.length; i++) {
				book.setBid(Integer.parseInt(split[i]));
				bookDao.del(book);
			}
		}
//这个是删除
		bookDao.del(book);
		ResponseUtil.writeJson(resp, 1);
		ResponseUtil.writeJson(resp, 0);
		return null;
	}

结果:

 

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值