C# ASP.NET - 响应重定向后无法在更新进度中隐藏图像

问题描述

我只有一个 Ajax UpdateProgress 用于页面中的一个 UpdatePanel。

更新面板有一个带有下载按钮的网格视图。

一旦用户点击按钮,“等待”图像就会出现,但即使在下载完成后仍会继续显示

下载完成后我应该如何隐藏它。

我的代码在下面但不起作用,因为即使下载完成后图像仍在显示

.cs

protected void ImageButton1_Click(object sender,ImageClickEventArgs e)
{
    ImageButton ImageButton1 = (ImageButton)sender;
    sIDint = ImageButton1.CommandArgument.ToString();

    Thread.Sleep(3000);
    HttpCookie cookie = new HttpCookie("ExcelDownloadFlag")
    {
        Value = "Flag",Expires = DateTime.Now.AddDays(1)
    };
    Response.AppendCookie(cookie);
    Response.Redirect("pdf.aspx?sID=" + sIDint.ToString());

    ScriptManager.RegisterStartupScript(this.Page,this.GetType(),"script","HideImage();",true);
    ImageButton imgLike = (ImageButton)FindControl("imgLike");

    if (imgLike != null)
    {
        imgLike.Visible = false;
    }
}

.aspx

function HideImage() {
    $(#imgLike).hide();
}

<asp:TemplateField HeaderText="Dwn">
    <ItemTemplate>
        <asp:UpdateProgress ID="UpdateProgress1" runat="server"
            AssociatedUpdatePanelID="UpdatePanel1">
            <Progresstemplate>
                <div class="modal">
                    <div class="center">
                        <img alt="" src="/Img/ajax-loader.gif" id="imgLike" />
                    </div>
                </div>
            </Progresstemplate>
        </asp:UpdateProgress>
        <asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
            <Triggers>
                <asp:AsyncPostBackTrigger ControlID="ImageButton1" />
            </Triggers>
            <ContentTemplate>
                <asp:ImageButton ID="ImageButton1" runat="server"
                    ImageUrl="/img/download.gif"
                    OnClick="ImageButton1_Click"
                    CommandArgument='<%# Eval("ID") %>' />
            </ContentTemplate>
        </asp:UpdatePanel>
    </ItemTemplate>
</asp:TemplateField>

编辑

解决

protected void ImageButton1_Click(object sender,ImageClickEventArgs e)
{
    ImageButton ImageButton1 = (ImageButton)sender;
    string sIDint = ImageButton1.CommandArgument.ToString();
 
    Thread.Sleep(3000);
    HttpCookie cookie = new HttpCookie("ExcelDownloadFlag")
    {
        Value = "Flag",Expires = DateTime.Now.AddDays(1)
    };
    Response.AppendCookie(cookie);
    ScriptManager.RegisterStartupScript(this,typeof(string),"OpenWindow","window.open('pdf.aspx?sID=" + sIDint + "');",true);
}

解决方法

暂无找到可以解决该程序问题的有效方法,小编努力寻找整理中!

如果你已经找到好的解决方法,欢迎将解决方案带上本链接一起发送给小编。

小编邮箱:dio#foxmail.com (将#修改为@)