在Cognos 10中报告准备就绪时触发的可靠事件

时间:2014-02-06 10:37:03

标签: javascript jquery cognos cognos-10

我有一些Cognos报告,其中包含需要在报告加载后立即运行的自定义JavaScript函数。我还没有找到报告准备就绪时触发的事件,所以我只是在报告底部的HTML Item s中包含了函数调用。一旦包含调用的脚本标记已加载,就会调用这些函数。自定义函数使用jQuery,因此我在导入jQuery的报告顶部有另一个HTML Item

问题是有时函数在jQuery加载完成之前执行,导致错误。检查页面源代码,我看到虽然保留了脚本标记的顺序,但它们都放在页面的头部。没有什么可以阻止它们并行加载,也不会阻止它们在报告加载完成之前执行。

我能想到的最佳解决方案是在报告加载完成后触发某些事件的函数调用。有没有人发现一个事件或一组事件可以在报告准备就绪时可靠地触发:

  • 从其提示页面加载后
  • 从另一份报告中钻取
  • 当点击页面上的重新提示按钮时?

JQuery的文档准备好不会在任何这些情况下触发。 <body onload>显然在Cognos 8中有效,但在Cognos 10中不起作用。

1 个答案:

答案 0 :(得分:2)

使用(文档).ready

请参阅this example from IBM

<script type="text/javascript" 
  src="https://ajax.googleapis.com/ajax/libs/jquery/1.4.1/jquery.min.js"></script>
<script type="text/javascript" 
  src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.0/jquery-ui.min.js"></script>
<script type="text/javascript">
var j = jQuery.noConflict();
j(document).ready(function()
{
  j('.ShowHideList').hide();
  j('.ShowHideClicker').click(function()
  {
    j(this).next().toggle();
  });
});
</script>