反馈已提交

网络繁忙

[通用]JS实现折叠展开组件

  • 文档创建者:Carly
  • 历史版本:9
  • 最近更新:Lynette.Zhao 于 2024-03-11
  • 1. 概述

    1.1 版本

    报表服务器版本App 版本
    HTML5 移动端展现插件支持功能
    11.0V11.0V11.0
    移动端报表块或图表块的折叠与展开

    1.2 预期效果

    用户可通过 折叠展开样式 功能实现移动端折叠展开组件(报表块/图表块),但是必须设置组件标题,且无法同时支持「允许全屏」按钮。

    1)用户希望在不设置组件标题时,实现移动端折叠展开组件功能。

    2)用户希望同时使用「允许全屏」和「折叠展开按钮」按钮。

    如下图所示:

    dongtai.gif

    1.3 实现思路

    用户可通过 JavaScript 代码控制报表块的折叠与展开。

    注1:模板需勾选移动端重布局。

    注2:手机横屏下不支持该功能。

    注3:仅可支持使用「允许全屏」和「折叠展开」按钮,不支持在全屏状态下展开收起组件。

    2. 示例一:报表块静态折叠展开按钮

    2.1 模板准备

    打开模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\demo\Phone\industry\零售集团实时监控-phone.frm

    点击下载模板:零售集团实时监控-phone.frm

    2.2 设置展开收起

    点击「组件设置」>「report0」>「移动端」,设置展开收起「自定义」,设置显示按钮从第4行开始收起,「不显示」展示按钮,默认「收起」,如下图所示:

    2020-06-02_14-18-14.png

    2.3 设置超级链接

    1)插入普通文本

    双击报表块「report0」,合并「B1~C1」单元格,点击「单元格元素」,插入普通文本:展开与收起,如下图所示:

    2020-06-02_14-26-34.png

    2)插入超级链接

    选中「B1单元格」,点击「超级链接」,插入「JavaScript 脚本」,输入 JavaScript 代码,如下图所示:

    12.png

    JavaScript 代码如下:

    _g().options.form.getWidgetByName("report0").toggleCollapsed()

    2.4 效果预览

    保存模板,点击「移动端预览」。

    用户可自定义「折叠展开按钮」位置,以防与「允许全屏」按钮冲突。

    报表块不设置标题时,不影响「展开收起」功能的使用。

    如下图所示:

    jingtai.gif

    3. 示例二:报表块动态折叠展开按钮

    本示例的「折叠展开按钮」可以跟随组件「展开收起」状态的变化而改变。

    3.1 模板准备

    打开模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\demo\Phone\industry\零售集团实时监控-phone.frm

    点击下载模板:零售集团实时监控-phone.frm

    3.2 设置展开收起

    点击「组件设置」>「report0」>「移动端」,设置展开收起「自定义」,设置显示按钮从第2行开始收起,「不显示」展示按钮,默认「展开」,如下图所示:

    2020-06-02_15-06-21.png

    3.3 设置文本控件

    添加一个「文本控件」,设置组件名称为aa,设置组件「不可见」,设置控件值为「点击折叠∧」,如下图所示:

    注:由于 3.2 节设置了组件默认状态为「展开」,所以初始控件值设置为「点击折叠∧」

           若组件默认状态为「收起」,则初始控件值设置为「点击展开∨」

    3.4 设置条件属性

    双击报表块「report0」,合并「B1~D1」单元格,点击「单元格元素」,插入公式=$aa,如下图所示:

    2020-06-02_15-12-09.png

    3.4.1 展开转换为折叠状态

    选中「B1」单元格,插入「条件属性」,属性添加「超级链接」,勾选「使用链接」,设置公式条件$aa='点击展开∨',如下图所示:

    2020-06-02_15-39-36.png

    「编辑」条件属性中的超级链接,插入 「JavaScript 脚本」,输入 JavaScript 代码,如下图所示:

    2020-06-02_15-44-52.png

    JavaScript 代码如下:

    _g().options.form.getWidgetByName("report0").toggleCollapsed();
    _g().options.form.getWidgetByName("aa").setValue("点击折叠∧");

    3.4.2 折叠转换为展开状态

    选中「B1」单元格,插入「条件属性」,属性添加「超级链接」,勾选「使用链接」,设置公式条件$aa='点击折叠∧',如下图所示:

    211.png

    「编辑」条件属性中的超级链接,插入「JavaScript 脚本」,输入JavaScript 代码,如下图所示:

    222.png

    JavaScript 代码如下:

    _g().options.form.getWidgetByName("report0").toggleCollapsed();
    _g().options.form.getWidgetByName("aa").setValue("点击展开∨");

    3.5 效果预览

    保存模板,点击「移动端预览」。自定义的「折叠展开按钮」可以跟随组件「展开收起」状态的变化而改变。如下图所示:

    dongtai.gif

    4. 示例三:图表块折叠功能

    注:本示例只能实现图表块折叠功能,如需实现图表块展开与折叠的效果,请参见:「通用」折叠展开样式 

    4.1 模板准备

    打开模板:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\demo\Phone\industry\零售集团实时监控-phone.frm

    点击下载模板:零售集团实时监控-phone.frm

    4.2 设置展开收起

    点击「组件设置」>「chart0」>「移动端」,设置展开收起「自定义」,「不显示」展示按钮,默认「展开」,如下图所示:

    2020-06-02_16-06-23.png

    4.3 设置图表特效

    双击图表块「chart0」,点击「特效」>「交互属性」>「添加链接」>「JavaScript」,添加 JavaScript 语句,如下图所示:

    2020-06-02_16-12-48.png

    JavaScript 代码如下:

    _g().options.form.getWidgetByName("chart0").toggleCollapsed()

    4.4 效果预览

    保存模板,点击「移动端预览」,点击图表块可折叠该组件,如下图所示:

    kuai.gif

    5. 已完成模板

    1)示例一

    已完成模板请参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\phone\JS\JS实现报表块静态折叠展开按钮.frm

    点击下载模板:JS实现报表块静态折叠展开按钮.frm

    2)示例二

    已完成模板请参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\phone\JS\JS实现报表块动态折叠展开按钮.frm

    点击下载模板:JS实现报表块动态折叠展开按钮.frm

    3)示例三

    已完成模板请参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\phone\JS\JS实现图表块折叠功能.frm

    点击下载模板:JS实现图表块折叠功能.frm

    附件列表


    主题: 移动端应用
    已经是第一篇
    已经是最后一篇
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

    鼠标选中内容,快速反馈问题

    鼠标选中存在疑惑的内容,即可快速反馈问题,我们将会跟进处理。

    不再提示

    10s后关闭



    AI

    联系我们
    在线支持
    获取专业技术支持,快速帮助您解决问题
    工作日9:00-12:00,13:30-17:30在线
    页面反馈
    针对当前网页的建议、问题反馈
    售前咨询
    采购需求/获取报价/预约演示
    或拨打: 400-811-8890 转1
    qr
    热线电话
    咨询/故障救援热线:400-811-8890转2
    总裁办24H投诉:17312781526
    提交页面反馈
    仅适用于当前网页的意见收集,帆软产品问题请在 问答板块提问前往服务平台 获取技术支持