历史版本5 :JS实现复选按钮控件全选和批量操作 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 问题描述编辑

在使用我们的复选框控件的时候,如何实现点击全选,则下面的所有信息都被选中呢?效果如下:

2. 解决思路编辑

在复选框中的初始化事件中把控件加入到一个全局数组里,然后在全选复选框里对数组里的控件进行遍历赋值。

3. 示例编辑

3.1 模板准备
新建一张模板,sql为SELECT top 100 * FROM [订单]
3.2 报表主体设计
设计样式如下图:
3.3 复选框设置
  • 全选复选框设置
添加一个状态改变事件,js如下:
var flag=this.getValue(); //获取当前复选框控件的状态,true /false for(var i=0;i<window.lineboxes.length;i++){ //循环遍历每个复选控件 var cr=FR.cellStr2ColumnRow(window.lineboxes[i].options.location); //由每个控件位置获取行号列号 _g().setCellValue(cr.col, cr.row, flag); //逐一赋值当前状态 } 
  • 单选复选框设置
添加一个初始化事件,js如下:
if (!window.lineboxes) { window.lineboxes = []; //控件加入到一个全局数组里 } lineboxes[lineboxes.length] = this; 
3.4 保存与预览

点击填报预览,就可看到上图效果,一完成模板请参照%FR%\WebReport\WEB-INF\reportlets\doc\Form\WidgetExample\CheckBoxSelectAll.cpt