反馈已提交
网络繁忙
前端预览报表时,模板会被转为 HTML,这个 HTML 的 head 标签中会引入 FineReport 内置的 JavaScript 文件finereport.js,代码如下:
<script type="text/javascript" src="/webroot/decision/view/report?op=emb&resource=finereport.js"></script>
finereport.js 在报表工程目录中没有实体文件,是由多个 JS 文件直接在后台内存中拼接而成的。其中包含了许多内置的 function 以及一些公有的属性,不管是在模板中还是其他网页中,只要引入了finereport.js,就能获取到 FR 对象并且通过 FR.xxx 的形式调用公有的属性与方法。FR 对象的属性和方法可查看:全局接口
报表加载时会自动引入finereport.js,因此在报表中添加 JavaScript 脚本时,可以直接使用 FR.xxx 来调用 FR 方法;如果需要在自己的网页,如某个 JSP 页面中调用 FR 的方法,需要先在 head 标签引入 finereport.js ,再通过 FR.xxx 来调用 FR 方法。
新建普通报表,选中 A1 单元格,给单元格添加一个「按钮控件」,按钮名字改为「测试」,如下图所示:
选中 A1 单元格,右边属性面板点击「控件设置>事件」,给按钮添加一个「点击」事件,如下图所示:
JavaScript 代码如下:
FR.showDialog("Test",600,400,"Hello World")
保存报表,点击「填报预览」,点击测试按钮后,弹出提示对话框,如下图所示:
新建一个 HTML 文件,实现自定义一个按钮,点击按钮弹出提示框。因为要用到 FR 对象的 showDialog 方法,所以代码中需要引入 FineReport 内置的 JavaScript 文件finereport.js。自定义代码如下:
点击可下载 HTML 文件:1.html
注:代码中调用了 CSS 弹框样式。
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"><html> <head> <title>FineReport Demo</title> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <script type="text/javascript" src="/webroot/decision/view/report?op=emb&resource=finereport.js"></script> <link rel="stylesheet" type="text/css" href="/webroot/decision/view/report?op=emb&resource=finereport.css&cssVersion=1557882553214"> <script>function button_onclick(){FR.showDialog("Test", 600, 400, "Hello World")}</script><input type="button" value="测试" onclick="javascript:button_onclick();" /> </head> <body></body> </html>
将 HTML 文件保存到%FR_HOME%\webapps\webroot 工程路径下,如下图所示:
注:预览时工程必须是运行的。
打开浏览器,地址栏输入 HTML 文件的 URL 路径,如本地工程输入:http://localhost:8075/webroot/1.html,即可访问该 HTML 文件。
点击测试按钮后,弹出提示框,提示框效果和 3.1 节报表中调用实现的效果一致。如下图所示:
售前咨询电话
400-811-8890转1
在线技术支持
请前往「服务平台」,选择「在线支持」
热线电话:400-811-8890转2
总裁办24H投诉
热线电话:173-1278-1526
文 档反 馈
鼠标选中内容,快速反馈问题
鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。
不再提示
10s后关闭