JS实现切换tab显示/隐藏参数面板上的控件

编辑
  • 文档创建者:devilddr
  • 浏览次数:12508次
  • 编辑次数:15次
  • 最近更新:Kevin-s 于 2019-06-23
  • 1. 描述

    页签式报表的需求,即需要点击某页签时,参数面板中的部分参数隐藏.

    点击标题 1,只出现订单 ID 参数:


    点击标题0,同时出现订单ID和运货商参数:


    2. 思路

    在 body 组件上添加初始化后事件,在 JS 中使用 setTimeout 函数来监听页签的事件状态,因为无法获取页签。


    所以这里通过 jQuery  类名选择器,我们利用 eq 选择到我们的页签控件 绑定 click 事件。


    3. 操作步骤

    下面举一个简单的例子详细介绍下该方法:


    3.1 新建报表

    选择文件>新建决策报表,添加数据集 ds1: SELECT * FROM S订单


    3.2 报表设计

    1)点击模板>模板参数,新增两个参数,分别命名为订单 ID 和运货商,如下图:


    2)将参数面板拖入报表主体,点击参数面板空白处,在设计器右侧的控件设置中,点击全部添加



    3)将 Tab 块拖入报表主体,并新增一个 Tab 标签页:



    4)这里要实现“运货商控件”在点击第二个 Tab 标签页时隐藏,点击第一个 Tab 标签页时出现,右上角选中 body 控件,添加一个初始化后事件


    JS 代码如下:

    setTimeout(function() {
        $(".fr-widget-click").eq(2).bind("click", function() {
            $("div[widgetname$='运货商']").show();
        });
        $(".fr-widget-click").eq(3).bind("click", function() {
            $("div[widgetname$='运货商']").hide();
        });
    }, 100);

    注:若控件名为英文名,则需要大写,否则不能识别。


    3.3 保存预览

    保存模板,点击预览,效果如上图。


    4. 预览效果

    4.1 PC 端预览效果



    4.2 移动端预览效果

    注:不支持移动端。


    5. 已完成模板

    模板效果在线查看请点击:JS 实现切换 Tab 显示或隐藏参数面板上的控件.frm

    已完成的模板,可参见:%FR_HOME%\webapps\webroot\WEB-INF\reportlets\doc\JS\表单JS实例\22-JS实现切换tab显示或隐藏参数面板上的控件.frm

    右击存储模板


    附件列表


    主题: 二次开发
    标签: 暂无标签 编辑/添加标签
    如果您认为本文档还有待完善,请编辑

    文档内容仅供参考,如果你需要获取更多帮助,付费/准付费客户请咨询帆软技术支持
    关于技术问题,您还可以前往帆软社区,点击顶部搜索框旁边的提问按钮
    若您还有其他非技术类问题,可以联系帆软传说哥(qq:1745114201

    此页面有帮助吗?只是浏览 [ 去社区提问 ]