反饋已提交
網絡繁忙
填报报表中,有时需要选择一些记录后,批量修改这些记录的值,比如在审核报表中,同样情况的记录较多时,如果每行单独点击审批,会比较麻烦,这时就需要对选择的记录进行批量审批或批量取消审批。
如下图所示,复选框选择记录后,点击按钮即可批量修改中止列的值。
利用 JS 对复选框进行遍历,判断是否选中,取选中的行号,再利用 contentPane.setCellValue(col,row,value)来进行批量设置。
打开内置模板%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\LineForm\LineForm7.cpt。
点击可下载模板:LineForm7.cpt
打开模板,报表样式如下图所示:
右击 D1、F1 单元格添加「按钮控件」,D1 单元格按钮名字为「修改中止列的值为"真"」,F1 单元格按钮名字为「修改中止列的值为"假"」,如下图所示:
点击选中A3 单元格「复选按钮控件」,为复选框控件添加「初始化后」事件,记录已选中的数据行,如下图所示:
JS 代码如下:
//记录已选中的数据行if (!window.lineboxes) { window.lineboxes = []; } lineboxes[lineboxes.length] = this;
1)点击选择 D1 单元格「按钮控件」,为按钮添加一个「点击」事件,事件内容为修改选中记录的中止列值为“真”,如下图所示:
JavaSccript 代码如下:
if(window.lineboxes) { var cells = []; for (var i = 0; i < lineboxes.length; i++) { if (lineboxes[i].selected()) { var cr=FR.cellStr2ColumnRow(window.lineboxes[i].options.location); //获取勾选复选框所在行列 _g().setCellValue(10, cr.row, '真'); //逐一赋值,这里列号列序号,第一列是0,第2列为1,依次类推 } } }
2)同样方法为 F1 单元格「按钮控件」添加「点击」事件,JavaSccript 代码如下:
if(window.lineboxes) { var cells = []; for (var i = 0; i < lineboxes.length; i++) { if (lineboxes[i].selected()) { var cr=FR.cellStr2ColumnRow(window.lineboxes[i].options.location); //获取勾选复选框所在行列 _g().setCellValue(10, cr.row, '假'); //逐一赋值,这里列号列序号,第一列是0,第2列为1,依次类推推 } } }
保存模板,选择「填报预览」,效果如下图所示:
注:不支持移动端。
已完成的模板,可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\填报预览JS实例\14-JS批量修改复选框选中行中某列的值.cpt
点击下载模板:14-JS批量修改复选框选中行中某列的值.cpt
文 檔回 饋
滑鼠選中內容,快速回饋問題
滑鼠選中存在疑惑的內容,即可快速回饋問題,我們將會跟進處理。
不再提示
10s後關閉