使用easyui实现列表的批量删除

使用easyui实现列表的批量删除 首先要做的就是增加一个多选框

  1. <table id="otGrid" nowrap="false" style="height: 330px;">
  2. <thead>
  3. <tr>
  4. <th data-options="checkbox:true"></th> //就是这个,多选框

在列表的配置选项中 增加一个 singleSelect:false, 把true改为false  意思就是可以多选

然后就是要在列表中接收值了,原来单个删除时接收一个值,现在要接收一个数组

代码:// 删除操作按钮事件

  1. $("#delBtn").bind("click", function() {
  2. // 得到选中的行
  3. //var selRow = otGrid.datagrid("getSelected");//返回选中一行 这个是注释过的  就是取一个
  4. var selRow = otGrid.datagrid("getSelections");//返回选中多行
  5. if(selRow.length==0){
  6. alert("请至少选择一行数据!");
  7. return false;
  8. }
  9. var ids=[];
  10. for (var i = 0; i < selRow.length; i++) {
  11. //获取自定义table 的中的checkbox值
  12. var id=selRow[i].OTRECORDID;   //OTRECORDID这个是你要在列表中取的单个id
  13. ids.push(id); //然后把单个id循环放到ids的数组中
  14. }
  15. if(confirm("确定要删除选中的超温记录吗?")){
  16. $.getJSON("${CTX_ROOT}/TOtrecordsController?method=removeTOtrecordsPOList",
  17. {"array[]":ids},  //这一处,传过去的值一定要是变量名[]  例如:array[] ,把ids这个数组传到后台
  18. function(data){
  19. alert(data.msg); //这个是后台返回过来的msg值,提醒
  20. if(1 == data.code){// 删除成功,则需要在树中删除节点
  21. // 检修任务grid 执行load
  22. otGrid.datagrid("reload");  /重新加载
  23. }
  24. });
  25. }
  26. });

java处理代码

// 获取页面提交的主键参数

  1. String[] array = request.getParameterValues("array[]");
  2. List<TOtrecordsPO> list = new ArrayList<TOtrecordsPO>();
  3. for (int i = 0; i < array.length; i++) {
  4. TOtrecordsPO totrecords = new TOtrecordsPO();
  5. totrecords.setOtrecordid(Long.valueOf(array[i]));
  6. list.add(totrecords);
  7. }
  8. tOtrecordsService.deleteAllTOtrecordsPO(list); //这个是我删除的方法
  9. 然后在我写的那个deleteAllTOtrecordsPO(list)方法里
  10. for (TOtrecordsPO to : entities) {
  11. this.deleteEntity(to);
  12. }

我循环调用单个删除

这样就好了

上一篇:问题处理:找不到Pch预编译文件?


下一篇:CF650C Table Compression