我在cognos中生成了一些活跃的报告。然后我使用JQuery在Cognos中遇到了这个动态报告: http://www.ibm.com/developerworks/library/ba-pp-reporting-advanced-report-design-page647/
我使用JQuery生成了一些交互式报告。但现在我想用JQuery创建一个活跃的报告。我试过但它没用。那么有没有办法在mht文件中使用JQuery? (因为活动报告以该格式存储)。
这是我在report studio中的HTML项目中的代码:
<script type="text/javascript">
var j = jQuery.noConflict();
j(document).ready(function()
{
alert("hello");
j('.ShowHideMap').hide();
j('.ShowHideClicker').click(function()
{
j(this).next().toggle();
});
});
</script>
<div class="ShowHideClicker">Click here to show/hide the Map Report</div>
<div class="ShowHideMap">
Map comes here
</div>
我正在使用Firefox打开活动报告。当我打开报告,然后点击“点击此处显示/隐藏地图报告”时,它不会隐藏。
我拿了一个记事本并输入以下代码并将其保存为“test.mht”
<html>
<head>
<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('.ShowHideMap').hide();
j('.ShowHideClicker').click(function()
{
j(this).next().toggle();
});
});
</script>
</head>
<body>
<div class="ShowHideClicker">Click here to show/hide the Map Report</div>
<div class="ShowHideMap">
Map
</div>
</body>
</html>
有效。当我点击“点击此处显示/隐藏地图报告”时,单词Map显示/隐藏。但是当我在活动报告中的HTML项目中使用相同的代码时,报告没有显示/隐藏。
答案 0 :(得分:1)
这可能会帮助
https://bobsbiblog.wordpress.com/2014/08/25/creating-javascript-functions-in-active-reports/
此技术的关键是标签,它是少数包含onLoad事件的标签之一。显示图像后立即触发此事件。
在报告中的任何位置添加HTML项,只需确保将其始终显示(在页面上,但不在任何面板中)即可。为HTML项目提供以下文本:
<img src="hal/imagesirot/progress.gif" width="1" height="1" onload="
while( ! alert) {}
/* Define the function */
if (!document.testFunction ) {
testFunction = function() {
alert('We are running the test function');
}
}
/* Run any startup actions */
testFunction();
"/>