如何从Jasper Server删除加载窗口

时间:2018-08-10 04:21:50

标签: jasperserver

我想删除加载/刷新报表时出现的加载窗口。 该怎么做?

有人可以告诉我至少应该更改的jasper服务器安装目录中的文件名吗?

1 个答案:

答案 0 :(得分:2)

Jasper服务器安装目录中 loading.jsp 文件下的部分

<t:insertTemplate template="/WEB-INF/jsp/templates/container.jsp">
    <t:putAttribute name="containerID" value="${not empty containerID ? containerID : 'loading'}"/>
    <t:putAttribute name="containerClass">panel dialog loading overlay moveable centered_horz centered_vert ${containerClass}</t:putAttribute>
    <t:putAttribute name="containerTitle"><spring:message code='jsp.wait'/></t:putAttribute>
    <t:putAttribute name="headerClass" value="mover"/>
    <t:putAttribute name="bodyContent" >

    <p class="message" role="alert" aria-live="assertive"><spring:message code='jsp.loading'/></p>
    <button id="cancel" class="button action up"><span class="wrap"><spring:message code="button.cancel"/></span><span class="icon"></span></button>

    </t:putAttribute>   
</t:insertTemplate>

当您像上面的示例那样进行操作时,加载窗口将随处消失。

要删除特定报告的负载,

输入两个具有 id 属性的 div 标签。然后使用js代码隐藏div。

下面显示了示例;

<div id="prabu">
    <div id="x3">
        <t:insertTemplate template="/WEB-INF/jsp/templates/container.jsp">
            <t:putAttribute name="containerID" value="${not empty containerID ? containerID : 'loading'}"/>
            <t:putAttribute name="containerClass">panel dialog loading overlay moveable centered_horz centered_vert ${containerClass}</t:putAttribute>
            <t:putAttribute name="containerTitle"><spring:message code='jsp.wait'/></t:putAttribute>
            <t:putAttribute name="headerClass" value="mover"/>
            <t:putAttribute name="bodyContent" >

                <p class="message" role="alert" aria-live="assertive"><spring:message code='jsp.loading'/></p>
                <button id="cancel" class="button action up"><span class="wrap"><spring:message code="button.cancel"/></span><span class="icon"></span></button>

            </t:putAttribute>   
        </t:insertTemplate> 
    </div>
</div>

然后在下面添加JavaScript代码;

<script>
    var url = window.location.href; //take current tab url
    var dash = 'http://localhost:8080/jasperserver/flow.html?_flowId=viewReportFlow&_flowId=viewReportFlow&ParentFolderUri=%2FMy_Reports&reportUnit=%2FMy_Reports%2FDashboard_Report_Original__2_&standAlone=true';

    if(url === dash ){
        removeElement("x3");

    }

    function removeElement(elementId) {
    // Removes an element from the document
        var element = document.getElementById(elementId);
        element.parentNode.removeChild(element);
    }
</script>

在我的情况下,我将报告用作仪表板,每隔1分钟刷新一次。因此,我只想删除仪表板报告的加载窗口。

在js代码上, URL 是浏览器中的当前URL。 破折号是我的信息中心报告网址。