在日常报表制作中,我们会时长遇到一些需要批量操作的功能,例如数据的批量删除,而此时往往跟复选框挂钩;一般是在报表中,我们可以通过复选框的形式进行勾选,然后通过按钮或者超链接触发JavaScript事件,获取复选框选中行,在进行一键删除。
接下来,就来讲解一下,如何通过获取复选框,获取选中行数据,进行一键删除行。
1、报表设计
本报表的应用是用于文件的上传和数据整理入库,此处示例多文件删除功能。
2、JavaScript事件
代码如下:
//获取复选框
var $span = $(".mr-checkbox-checkon");
var darray = [];
var array = [];
var $tds = $("td").has($span);
var len = $tds.length;
var flat=true;
for (var i = 0; i < len; i ++) {
if($($span[i]).closest('tr').css('display')!='none'){
flat=false;
break;
}
}
if(flat){
len=0;
}
if(len<=0){
alert("请选择记录!");
return;
}
//获取选中行
for (var i = 0; i < len; i ++) {
var id = $($tds[i]).attr("id");
if (id) {
var rownum =contentPane.curLGP.getTDRow($tds[i])-1;
var wjid=contentPane.getCellValue(2,rownum);
array.push(wjid);
darray.push(id);
}
}
//删除选中行
contentPane.deleteReportRC(null,darray);
//array是我用来做其他操作用的,读者可以根据自身情况获取数据和操作
3、效果图