1

我正在尝试以编程方式触发“新”事件。

如何触发新事件(不仅仅是通过 customEvents 函数干扰现有事件)。

你能(请)分享一个例子吗

4

1 回答 1

1

如果您有权访问报告上下文,则可以使用事件管理器来触发事件:

<script type="text/javascript">
     context.eventMgr().fireExternalEvent("customEventName", customEventObj)
</script>

另一方面,如果您有权访问 ic3Reporting 实例,则可以在应用程序之外触发事件

例如:

var ic3Application = ic3.startReport(options);

您可以通过以下方式触发应用程序事件:

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

    var ic3Application = ic3.startReport(options);
    var customEventObj = {someKey: 'someVal'};

    ic3Application.fireEvent("customEventName", customEventObj)
</script>

编辑

如果您要在“onSelect”中使用您的事件,它可能如下所示:

customEventObj = {
       selection : {
          name: 'selectionName',
          uniqueName: 'selectionUniqueName'
       }
    }

但是,您仍然可以自由地提供任何符合您需求的对象。

于 2016-05-20T13:07:07.150 回答