页面树结构
转至元数据结尾
转至元数据起始

温馨提示

本文档的示例代码仅适用于本文档中的示例报表/场景。若实际报表/场景与示例代码无法完全适配(如使用功能不一致,或多个宏代码冲突等),需根据实际需求开发代码。

示例说明

         在页面中,用户要求根据公共参数中的一个参数中的值控制另一个参数是否显示。如示例中,根据页面公共参数中的“销售时间”参数中的值来控制 “产品类别”参数是否显示。当“销售时间”参数的值为“2013”时不显示“产品类别”参数;当“销售时间”参数的值为“2014”时显示“产品类别”参数;并页面初始化的时候默认不显示“产品类别”参数。

      当“销售时间”参数的值为“2013”时不显示“产品类别”参数,如下图:

        
       当“销售时间”参数的值为“2014”时显示“产品类别”参数,如下图:

        


设置方法

1、在“资源定制”节点下,创建一张页面资源。

2、选中页面,右键选择 编辑宏 进入报表宏界面。

3、在报表宏界面新建客户端模块,在弹出的新建模块对话框中,选择对象为page;事件为onRenderPage;并把下面宏代码复制到代码区域。 目的是页面初始化的时候不显示“产品类别”参数。

4、在报表宏界面新建客户端模块,在弹出的新建模块对话框中,选择对象为page;事件为onParamValueChanged;并把下面宏代码复制到代码区域。目的是当参数发生改变时是否显示 “产品类别”参数。



宏类型

类型

对象

事件

ClientSide

page

onRenderPage


宏代码

function main(page, pageContext) {
    // debugger;
    page.paramPanel.getParamTagByParamName("产品类别").style.display = 'none'; //隐藏页面上的"产品类别"公共参数
}

宏类型

类型

对象

事件

ClientSide

page

onParamValueChanged


宏代码


function main(page, pageContext, param) {
    //debugger;
    var param1 = page.getParamValueByName("销售时间"); //获取参数"销售时间"
    if (param1.displayValue == "2013") {
        page.paramPanel.getParamTagByParamName("产品类别").style.display = 'none'; //隐藏页面上的"产品类别"公共参数
    }
    else {
        page.paramPanel.getParamTagByParamName("产品类别").style.display = ''; //显示页面上的"产品类别"公共参数
    }
}


关键对象总结

  • 设置参数是否显示: page.paramPanel.getParamTagByParamName("参数名称").style.display = 'none';

搜索关键字: 隐藏参数,隐藏,显示参数、显示、控制参数、参数