2016-04-26 32 views
2

我有一个下拉菜单列出月份的代码如下。如何从HTML下拉在icCube触发事件

<select> 
{{ for(var col = 0; col < d.colCount; col++) { }} <!-- This is the way adding js code --> 
<option value="[Time].[Month].[month].[{{=d.colLabel(col) }}]">{{=d.colLabel(col) }}</option> 
{{ } }} 

当用户选择一个选项,事件被称为一个月应该被解雇。我怎么能在icCube OLAP中做到这一点。

回答

2

有几种可能性如何可以实现所需的功能

对细胞点击功能

有特殊的属性,让点击名为IC3Aread more...

<select> 
{{ for(var col = 0; col < d.colCount; col++) { }} 
    <option ic3a="fireClick(0,{{=col}})" value="[Time].[Month].[month].[{{=d.colLabel(col) }}]"> 
     {{=d.colLabel(col) }} 
    </option> 
{{ } }} 
</select> 
特定数据单元

您应该在选项'“事件”选项卡中为“单元格单击”指定事件名称:“月”。

外部代码

如果你有机会获得ic3Reporting例如

例如:

var ic3Application = ic3.startReport(options); 

,并希望在您的网站处理的代码目前的功能,你可以发射IC3内部以这种方式发生的事件:

<script type="text/javascript"> 
    //get ic3application instance 

    var ic3Application = ic3.startReport(options); 

    function selectMonth (value) { 
     ic3Application.fireEvent("month", new viz.event.ValueEvent(value)) 
    }  
</script> 
<select onchange="selectMonth(this.value)"> 
    {{ for(var col = 0; col < d.colCount; col++) { }} 
    <!-- This is the way adding js code --> 
    <option value="[Time].[Month].[month].[{{=d.colLabel(col) }}]"> 
     {{=d.colLabel(col)}} 
    </option> 
    {{ } }} 
</select> 

ic3 FILTER Widget

适用于想要从多维数据集中获取预定义月份的列表。 添加MDX滤镜> ICCUBE>下拉控件,并以需要的方式配置它的设置。

IC3行动的Widget

此选项适合当你有几个月的具体名单。

只需创建工具/实用程序>操作>下拉窗口小部件,并在“项目向导”选项卡中提供需要的月份,并在“事件”选项卡上将“月份”设置为“在选择”事件名称上的值。

+0

感谢您的回复。你能否告诉我在报告中是否可以这样做? –

+0

第一,第三和第四种解决方案适用于非嵌入式立方体报告。如果我错过了一些东西,请你澄清你想达到的目标。 –

+0

我尝试了以下方法,触发事件只适用于不带select的按钮。任何想法如何使它与选择工作? –