即使在工作完成后,Updateprogress也不会停止或隐藏

时间:2018-05-07 18:40:01

标签: javascript asp.net vb.net updatepanel updateprogress

以下是我在aspx页面上的代码。我试图使用asp:UpdateProgress控件使用加载图像将页面灰显。一切正常,除了asp:UpdateProgress控件永远不会完成,即使工作完成并且页面更新???我正在使用母版页。我必须遗漏一些简单的事情来结束这个过程。

<asp:UpdateProgress ID="UpdateProgress1" runat="server" 
    AssociatedUpdatePanelID="updatepanel1" DynamicLayout="false" DisplayAfter="0">
    <ProgressTemplate>
        <div id="overlay">
            <div id="modalprogress">
                <div id="theprogress">
                    <img alt="" src="ajax-loader.gif" />
                </div>
           </div>
        </div>
    </ProgressTemplate>
</asp:UpdateProgress>

<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
    <ContentTemplate>
        <ajaxToolkit:AjaxFileUpload ID="AjaxFileUpload1" AllowedFileTypes="xml" 
            AutoStartUpload="true" MaxFileSize="30000" MaximumNumberOfFiles="1" 
            OnUploadComplete="AjaxFileUpload1_UploadComplete" Mode="Auto"
            runat="server" ClearFileListAfterUpload="True" />

        <asp:Button ID="btnReadXml" Text="Button" runat="server" 
            OnClick="btnReadXml_Click" />
        <br />
        <asp:Label ID="lblmessage" runat="server" Font-Bold="true"> 
        </asp:Label>
        <br />
        <FTB:FreeTextBox ID="txtAddendum" ToolbarLayout="SelectAll, Cut, Copy, 
            Paste, Delete, Undo, Redo;|Bold,Italic,Underline,BulletedList"
            runat="server" Height="500px" Width="100%">
        </FTB:FreeTextBox>
    </ContentTemplate>
</asp:UpdatePanel>

CSS:

<style>
    #overlay {
        position: fixed;
        z-index: 99;
        top: 0px;
        left: 0px;
        background-color: #FFFFFF;
        width: 100%;
        height: 100%;
        filter: Alpha(Opacity=80);
        opacity: 0.80;
        -noz-opacity: 0.80;
    }

    #theprogress {
        background-color: #038890;
        width: 110px;
        height: 24px;
        text-align: center;
        filter: Alpha(Opacity=100);
        opacity: 1;
        -noz-opacity: 1;
    }

    #modalprogress {
        position: absolute;
        top: 50%;
        left: 50%;
        margin: -11px 0 0 -55px;
        color: white;
    }

    body > #modalprogress {
        position: fixed;
    }
</style>

1 个答案:

答案 0 :(得分:0)

问题是您在更新面板中使用了AjaxFileUpload控件。 AjaxFileUpload控件强制完全回发 - 这是不可避免的。此控件没有异步回发,并且它们在更新面板中没有任何意义,因为可能会出现问题......

可能发生的是由AjaxFileUpload控件引起的 postback 启动UpdateProgress控件,但由于回发不是异步的,因此它永远不会结束&#34; (因为它从未异步开始,它只是一个同步回发)。