自定义提交按钮

  • 文档创建者:文档助手1
  • 编辑次数:16次
  • 最近更新:Kevin-s 于 2020-03-25
  • 1. 概述

    1.1 问题描述

    在我们使用填报表时,有时只需要提交按钮将数据入库,不希望使用 FR 内置的工具栏的按钮,希望能够自定义提交按钮。
    自定义按钮既可以是 FineReport 模板中添加的按钮控件,也可以是 Web 集成页面中,HTML 的按钮标签。
    (1)FineReport 模板中的按钮控件实现自定义提交操作详细请参照 自定义按钮中实现提交操作
    (2)而在 Web 页面中,点击 HTML 中的按钮提交 iframe 中的 FineReport 报表就在下面详述。

    效果如下图:

    222

    1.2 实现思路

    FR 中内置的报表提交 JS 代码是contentPane.writeReport(),如果是调用嵌入的报表提交功能的话,使用document.getElementById('报表所在iframe的id').contentWindow.contentPane.writeReport();

    2. 操作步骤

    2.1 编辑模板

    使用模板%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Form\FreeFrom\FreeForm.cpt

    2.2 编辑 HTML 代码

    在网页中添加按钮代码如下:

    <button type="button" onclick="document.getElementById('reportFrame').contentWindow.contentPane.writeReport()">提交</button>

    完整代码:


    <html>     
    <head>     
    <title>自定义提交按钮</title>   
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> 
    </head>     
    <body>     
    <div id="toolbar">     
    <button type="button" onclick="document.getElementById('reportFrame').contentWindow.contentPane.writeReport()">提交</button>
    </div>     
    <iframe id="reportFrame" onload="afterload()" src="/webroot/decision/view/report?viewlet=doc/Form/FreeFrom/FreeForm.cpt&op=write&__showtoolbar__=false" width = 100% height = 80%></iframe>     
    </body>     
    </html> 

    已完成示例请参照%FR_HOME%\webapps\webroot\help\page_demo\write.html


    2.3 保存预览

    已完成页面请查看%FR_HOME%/webapps/webroot/help/page_demo/write.html
    启动设计器,在浏览器输入:http://localhost:8075/webroot/help/page_demo/write.html,效果如下图:

    222


    附件列表


    主题: 部署集成
    • 有帮助
    • 没帮助
    • 只是浏览
    • 评价文档,奖励 1 ~ 100 随机 F 豆!