反馈已提交

网络繁忙

图表排序后缩放浏览器失效

  • 文档创建者:帆软应用复用-Cat
  • 历史版本:4
  • 最近更新:帆软应用复用-Cat 于 2022-11-23
  • 1. 概述

    1.1 版本

    FineReport 版本
    11.0

    1.2 问题描述

    决策报表使用 图表排序接口 进行排序,JS代码写在图表的初始化后事件中,初次预览正常排序,缩小浏览器窗口后排序失效。

    1654862295227139.gif

    注:普通报表的图表排序写在加载结束事件中,调整窗口不会使排序失效

    1.3 解决方案

    1)方法一:为图表添加初始化后事件, window.onresize() 事件,即在浏览器窗口大小发生调整时就会执行。

    2)方法二:为 body 添加初始化后事件, window.onresize() 事件,即在浏览器窗口大小发生调整时就会执行。

    2. 示例

    打开报表:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\Chart\GraphSwitching\图表排序.frm

    2.1 方法一

    1)选中图表组件,点击「事件」,添加初始化事件,如下图所示:

    2022-11-23_13-45-09.png

    JS 代码如下:

    注: 这里重复执行两次 chart.sortChart() 的原因是保证排序规则不变,在调整窗口大小后可以保持最开始的排序规则,即始终升序或者降序。

    window.onresize = function() {
    setTimeout(function() {
    var chart = FR.Chart.WebUtils.getChart("chart0").getChartWithIndex(0);
    chart.sortChart();
    chart.sortChart();
    }, 2000);
    }

    2)保存报表,选择 PC 端预览,效果如下:

    注:不支持移动端。

    1654862295227139.gif

    2.2 方法二

    1)选中 body,点击「事件」,添加初始化事件,如下图所示:

    注:仅适用于新自适应。

    2022-11-23_13-45-09.png

    JS 代码如下:

    window.onresize = function() {
    setTimeout(function() {
    var chart = FR.Chart.WebUtils.getChart("chart0").getChartWithIndex(0);
    chart.sortChart();
    chart.sortChart();
    }, 2000);
    }

    2)保存报表,选择 PC 端预览,效果与 2.1 节相同。

    3. 模板下载

    点击下载模板:图表排序接口示例.frm


    附件列表


    主题: 图表应用
    • 有帮助
    • 没帮助
    • 只是浏览
    中文(简体)

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

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

    不再提示

    10s后关闭



    AI

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