i在Cognos中生成了一些活动报告。然后,我使用jQuery在Cognos中遇到了这一动态报告:http://www.ibm.com/developerworks/library/ba-pp-reporting-advanced-report-design-page647/
我与jQuery生成了一些交互式报告。但是现在我想使用jQuery进行活跃的报告。我尝试过,但它不起作用。那么,是否可以在MHT文件中使用jQuery?(因为活跃报告以这种格式存储)。
这是我在报告工作室中的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>
它有效。当我单击"单击此处显示/隐藏地图报告"时,单词地图正在显示/隐藏。但是,当我在活动报告中在HTML项目中使用相同的代码时,报告没有显示/隐藏。
这可能会有所帮助
https://bobsbiblog.wordpress.com/2014/08/25/creating-javascript-functions-in-active-reports/
此技术的关键是标签,这是少数包括on Load事件的标签之一。显示图像后,此事件就会发射。
报告中的任何位置添加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();
"/>