【问题标题】:How to Do selection in a widget based on a selection done in a Template widget (JS triggered)如何根据在模板小部件中完成的选择在小部件中进行选择(JS 触发)
【发布时间】:2017-02-17 15:32:20
【问题描述】:

在 iccube v6 报告中,我有一个名为“地图”的模板小部件,此后它有一些触发事件的代码: “地图,选项,After Render”内的代码:

self.fireEvent(vizEventType.onSelection, new viz.event.SetSelectionEvent(members));

JS 内的代码,On Send Event

function(context, $box, type, args) {
    context.fireEvent("MapZoneSelected",args)
    return args;
}

在报告 JS 中:

function consumeEvent( context, event ) {                                
if (event.name == 'MapZoneSelected') {
    var mapZoneSelected = event.value; // Just used to debug the passed values
} 
}      

所以,我看到MapZoneSelected 事件被很好地触发了……

在 Destination 小部件中,do Set Selection 定义为 MapZoneSelected 但是小部件没有根据那个事件设置它的选择……有一个反应,但它只会清除任何以前的选择。

我不知道我错在哪里......

【问题讨论】:

  • 它是一个模板小部件,因此由小部件来处理多选。看不到使用 doSetSelection 将事件重新绑定到同一个小部件有何帮助
  • 我想要做的是“只是”使用名称或 uniqueName 作为参数根据模板小部件中的事件为小部件设置选择...有人可以提供一个简单的工作示例吗?

标签: javascript widget iccube iccube-reporting


【解决方案1】:

我已经为您创建了一个示例报告,其中包含将选择事件发送到图表小部件的小部件模板。只需单击气泡,您将看到图表小部件上应用的选择(支持多选项)。你可以在这里测试它:

https://demo6.iccube.com/icCube/doc/ic3report?ic3demo=&name=%2Fshared%2FStackOverflow%2FWidget%20Template%20Fire%20Selection&menu=on

【讨论】:

    猜你喜欢
    • 2012-07-23
    • 1970-01-01
    • 1970-01-01
    • 2012-08-11
    • 2011-07-28
    • 2022-01-10
    • 2021-07-15
    • 2011-07-02
    • 2020-11-14
    相关资源
    最近更新 更多