如何在等待长时间处理方法时完成加载页面

时间:2014-05-28 08:27:46

标签: javascript asp.net

aspx文件中的代码如下:

<script type="text/javascript">
function loadimg() {            
    window.location.href = "../OutputHtml/loading.html";
    return true;
}
</script>

<asp:ImageButton title="fetch matrix" ImageUrl="~/Images/matrix.png" ID="btnRouteMatrix" OnClientClick="return loadimg();" runat="server" OnClick="btn_RouteMatrix" />

单击ImageButton后,相应的页面根本没有变化。技巧部分是当我将“window.location.href”更改为“parent.window.location.href”时,就像那样:

function loadimg() {            
    parent.window.location.href = "../OutputHtml/loading.html";
}

父页面(即整个页面)立即更改。这有什么不对。在btn_RouteMatrix方法完成之前,还有其他方法可以将加载页面放在工作框架中吗?

1 个答案:

答案 0 :(得分:0)

哇,坚持住那里。

您只需显示加载图标即可加载完全独立的页面 建议将页面上的图像指向您的加载图标,并隐藏它。

然后,当你调用你的方法时,首先要做它来显示它,然后在处理完成后隐藏它。

示例:

<img id="loader" alt="loader" src="../Images/Loader.gif" style="display:none" />
<button type="button" onclick="runMethod()">Click Me</button>

<script type="text/javascript">
   function runMethod(){
     $("#loader").show();


     // Long running method


     $("#loader").hide();
   }
</script>