1. 概述
1.1 问题描述
如果报表中有多个 sheet 页,前端预览时,默认展示第一个 sheet 页,那么页面加载后如何展示指定 sheet 页呢?
如下图示例中的效果,报表选择填报预览后,前端默认展示第二个 sheet 页。
1.2 解决思路
在模板Web属性下的对应页面设置中添加加载起始事件,事件中指定初次展示的 sheet。接口说明可以参考:页面交互接口。
2. 示例
2.1 准备模板
准备一张拥有 3 个 sheet 页的报表,可点击下载模板:人口统计表.cpt
2.2 添加事件
设计器菜单栏点击模板>模板Web属性,打开的界面选择填报页面设置>为该模板单独设置,添加一个加载起始事件,如下图所示:
JavaScript 代码如下:
if (typeof(tempfirstLoad) == "undefined") {
_g().loadSheetByIndex(1);
//切换到第2个sheet
tempfirstLoad = false;
//将全局变量赋为false,防止重复执行本事件
}
2.3 效果预览
保存报表,点击填报预览,效果如1.1问题描述中所示。
注1:不支持移动端和新填报预览。
3. 模板下载
已完成模板可参见:%FR_HOME%\webroot\WEB-INF\reportlets\doc\JS\填报预览JS实例\22-JS实现页面加载后默认显示指定sheet页签.cpt