UpdateProgress无法使用下载文件

时间:2011-08-16 15:33:15

标签: .net ajax file download ajax.net

UpdateProgress无法使用下载文件。请参阅下面的代码,在此代码中我使用了updatepabnel和updateprogress。

在btngen上点击我正在下载一个excel file.file正在下载但是UpdateProgress没有显示。如果我不会PostBackTrigger然后它不下载报告,如果PostBackTrigger然后它没有显示updateprogress。请提示如何解决此问题。我不想打开一个单独的弹出窗口。

<asp:UpdateProgress ID="prgbar"  runat="server" AssociatedUpdatePanelID="pnl1" DynamicLayout="true">
  <ProgressTemplate>
    <asp:Label id="lblmsg" Text="Please wait while the report generates...." runat="server"></asp:Label>
  </ProgressTemplate>
</asp:UpdateProgress>

<asp:UpdatePanel ID="pnl1" ChildrenAsTriggers="False"  runat="server" UpdateMode="Conditional">
  <ContentTemplate>
    <asp:Button ID="btngen" Text="Generate" runat="server" onclick="btngen_Click" />
  </ContentTemplate>
  <Triggers>
    <asp:PostBackTrigger ControlID="btngen"  />
  </Triggers> 
</asp:UpdatePanel>

1 个答案:

答案 0 :(得分:0)

使用javascript显示更新进度: - 使用此javascript代码

    var updateProgress = null;

    function postbackButtonClick() {
        updateProgress = $find("<%= prgbar.ClientID %>");
        window.setTimeout("updateProgress.set_visible(true)", updateProgress.get_displayAfter());
        return true;
    }

在你的btngen按钮上添加OnClientClick =“return postbackButtonClick();”。希望这会有效。在Scriptmanager标签之后输入javascript。