历史版本33 :contentPane 返回文档
编辑时间: 内容长度:图片数:目录数: 修改原因:

目录:

1. 描述编辑

contentPane 是 contentWindow 下面的最常用的一个属性,为存放 cpt 报表内容的容器。

注:contentPane 只有在 cpt 中才有,frm 中没有

2. 引用contentPane编辑

1).在普通模板中

在普通模板的 JS 脚本中直接使用 contentPane 就能获取到该对象。

2).网页中使用 iframe 嵌入报表

如果报表嵌在网页的 iframe 中,首先在 iframe 中获取 contentWindow,然后获取属性 contentPane 对象,如下:

var contentPane=document.getElementById('reportFrame').contentWindow.contentPane;

如:需要在网页中获取报表填报页面的一个按钮,并执行点击事件:

document.getElementById('reportFrame').contentWindow.contentPane.getWidgetByName('控件名').fireEvent('click');

3. contentPane 常用属性编辑

parameterEl返回对象参数界面
curLGP返回 curLGP 对象,只有填报预览下才有
currentPageIndex当前所在页,只有分页的时候有
reportTotalPage总页数,只有分页的时候有
zoom缩放比例

注:只有分页的时候有,包含在 cpt 的分页预览下和在 cpt 填报预览且  __cutpage__=v 填报分页情况下

参数界面详细请查看 参数界面 JS 实例

curLGP 详细请查看 curLGP

4. contentPane 常用方法编辑

方法参数 说明
appendReportRC(num,cell) 在选中行后面插入 num 行,只有填报表才可以用
deleteReportRC() 删除指定行,只有填报表才可以用
deleteRows(param) param:数组,例如['A1','B1'],需注意对应单元格必须设置为可扩展批量删除 param 所在记录,param 为一串单元格坐标的字符串数组
emailReport() 邮件发送
exportReportToExcel('指定格式') 参数为 page 时分页导出;simple 原样导出;sheet 分页分 sheet 导出
exportReportToImage() 输出图片
exportReportToPDF() 输出 PDF
exportReportToWord() 输出 Word
fireEvent() 触发事件
flashPrint() Flash 打印
getWidgetByName() 获取填报页面的控件、参数面板里的控件、决策报表主体里的控件
getCellValue(cell)/getCellValue(reportIndex,columnIndex,rowIndex)reportIndex  选填,sheet编号,从 0 开始;
columnIndex  必填,列号,从 0 开始;
rowIndex     必填,行号,从 0 开始

获取单元格值,只有填报下有
gotoFirstPage() 跳转到第一页,只有分页的时候有
gotoLastPage() 跳转到最后一页,只有分页的时候有
gotoPreviousPage() 跳转到上一页,只有分页的时候有
gotoNextPage() 跳转到下一页,只有分页的时候有
gotoPage(pn, para, noCache) 跳转到指定 num 页,只有分页的时候有,还包含决策报表里的报表块有分页的情况
importExcelData() 在线导入 Excel,只有填报表才可以用
on() 监听
pdfPrint() PDF 打印
printPreview() 打印预览,只有数据分析时才有
pageSetup() 页面设置,只有数据分析才有
scale(str) 缩放,str 为"+"时放大,为"-"时缩小
setCellValue(cell,null,value)/setCellValue(col,row,value) 给单元格赋值,只有填报表才有
verifyReport() 数据校验,只有填报表才可以用
writeReport([Object reportIndex])选填,sheet编号,从 0 开始 提交报表,只有填报表才可以用;
contentPane.writeReport()提交所有sheet;
contentPane.writeReport(reportIndex)提交指定的 sheet;
 verifyAndWriteReport([Object isAllSheet]) 选填,true 为提交所有sheet 校验并提交报表,只有 cpt 填报表才可以用;
contentPane.verifyAndWriteReport() 为提交当前 sheet;
contentPane.verifyAndWriteReport(true)为提交所有 sheet;

 stash(undefined,true)  暂存,第一个参数是按钮,第二个参数是是否提示成功,也可以不传参
 refreshAllSheets() 刷新所有 sheet,只有填报表下可以用;
多 sheet 填报中,刷新所有 sheet,且刷新后会停留在上次查看的 sheet 页
 loadSheetByIndex(sheet的序号)  多 sheet 切换
 loadSheetByName(sheet的名字)  多 sheet 切换

contentPane.getWidgetByName() 获取填报页面的控件,对控件进行操作,详细请查看 引用控件及控件方法列表

5. contentPane 监听事件编辑

通过上述中的 contentPane.on() 来监听下述事件。

方法说明
startload加载起始
afterload加载结束
beforetopdfPDF 导出前
aftertopdfPDF 导出后
beforetoexcelExcel 导出前
aftertoexcelExcel 导出后
beforetowordWord 导出前
aftertowordWord 导出后
beforetoimage导出图片前
aftertoimage导出图片后
beforepdfprintPDF 打印前
afterpdfprintPDF 打印后
beforeflashprintFlash 打印前
afterflashprintFlash 打印后
afterverify校验后,只有填报有
beforeverifywrite校验提交前,只有填报有
afterverifywrite校验提交后,只有填报有
beforewrite填报前,只有填报有
afterwrite填报后,只有填报有
writesuccess填报成功,只有填报有
writefailure填报失败,只有填报有
beforeappend添加行前,只有填报有
afterappend添加行后,只有填报有
beforedelete删除行前,只有填报有
afterdelete删除行后,只有填报有
cellselect填报/数据分析时选择格子时触发
tabchange对多 tab 的模板 tab 切换时触发

contentPane 监听事件的使用方法可查看 JS 获取当前编辑行单元格行号 章节。


索引:

curLGP