在日常报表制作中,我们会时长遇到一些需要批量操作的功能,例如数据的批量删除、批量入库、批量新增、批量修改、批量查询等等,而此时也时长跟复选框挂钩;一般是在报表中,我们可以通过复选框的形式进行勾选,然后通过按钮或者超链接触发JavaScript事件,获取复选框选中行数据,一键删除、入库、修改、查询选中数据。
接下来,就来讲解一下,如何通过获取复选框,获取选中行数据,进而进行传参,一键删除、入库、修改、查询选中数据。
1、报表设计
本报表的应用是用于文件的上传和数据整理入库,此处示例多文件删除功能。
2、JavaScript事件
代码如下:
//获取复选框
var $span = $(".mr-checkbox-checkon");
var darray = [];
var array = [];
var $tds = $("td").has($span);
var len = $tds.length;
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);
}
}
console.log(array);
//删除复选框选中行
contentPane.deleteReportRC(null,darray);
//进行传参处理,后续根据自身情况进行处理,进行删除数据等操作
根据自身需要,也可以直接进行字符串的拼接等操作。
3、效果图
通过如上的操作,就可以通过JavaScript获取复选框选中行数据,进而进行数据的一键删除,并删除报表页面上的显示数据,达到预期的效果。