background image
 
 
2 contentWindow 
2.1 介绍: 
contentWindow 是在 web 页面集成的时候,将 FineReport 报表嵌入在 iframe 中,调用报表
对象时使用的接口,比如说:document.getElementById('reportFrame').contentWindow,其中
document.getElementById('reportFrame')是获取 iframe 对象,contentWindow 是报表对象,相
当于 html 中的 window 对象。 
在普通模板的 JS 脚本中可以直接使用 contentWindow 下的属性,如直接使用 contentWindow
中的 contentPane,而不用写 contentWindow,这是因为 js 脚本本身就在 FR 模板中执行。 
网页中使用 iframe 嵌入报表,如果文档包含框架(frame 或 iframe 标签),框架中嵌入了 FR
报表,则会创建一个 contentWindow 对象先获取 iframe,再调用 contentWindow,然后使用
contentWindow 下面的属性: 
var contentWindow = document.getElementById("reportFrame").contentWindow.XXX; 
不论是 web 页面集成里面还是直接在 FR 模板之中,contentWindow 下面最常用的属性当属
contentPane,所以下面将详细介绍 contentPane。 
contentPane 是 contentWidow 下面的最常用的一个属性,为存放报表内容的容器。 
2. 2 引用 contentPane 
在普通模板的 JS 脚本中直接使用 contentPane 就能获取到该对象。 
如果报表嵌在网页的 iframe 中,首先在 iframe 中获取 contentWindow,然后获取属性
contentPane 对象,如下: 
var contentPane = document.getElementById('reportFrame').contentWindow.contentPane; 
比如,需要在网页中获取报表填报页面的一个按钮,并执行点击事件: 
document.getElementById('reportFrame').contentWindow.contentPane.getWidgetByName('控件
名').fireEvent('click') 
2.2.1 contentPane 常用属性 
parameterEl 
返回对象参数界面 
curLGP 
返回 curLGP 对象,只有填报预览及表单预览下才有 
currentPageIndex 
当前所在页,只有分页预览才有 
reportTotalPage 
总页数,只有分页预览报表才有 
zoom 
缩放比例 
2.2.2    contentPane 常用方法