使用UpdateProgress时,Response.Redirect无法正常工作

时间:2017-10-09 21:38:28

标签: asp.net ajax updatepanel response.redirect updateprogress

我使用UpdatePanel和UpdateProgress。

Response.RedirectJavaScript redirect window都没有与他们合作。

此代码正常运行:

<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<asp:UpdateProgress ID="UpdateProgress1" runat="server" DynamicLayout="true"
        AssociatedUpdatePanelID="UpdatePanel1">
    <ProgressTemplate>
        <asp:Image ID="ImageWait" runat="server" ImageUrl="../images/wait.gif" />
    </ProgressTemplate>
</asp:UpdateProgress>
<asp:UpdatePanel ID="UpdatePanel1" runat="server" UpdateMode="Conditional">
    <ContentTemplate>
        <asp:Button ID="ButtonSave" runat="server" Text="Save"
        OnClick="ButtonSave_Click" ValidationGroup="Valid1" />
    </ContentTemplate>
    <Triggers>
        <asp:AsyncPostBackTrigger ControlID="ButtonSave"
            EventName="Click" />
    </Triggers>
</asp:UpdatePanel>

不工作:

protected void ButtonSave_Click(object sender, EventArgs e)
{
    // Saved here

    Response.Redirect("../Main/Success.aspx");
}

也不起作用:

protected void ButtonSave_Click(object sender, EventArgs e)
{
    // Saved here

    Page.ClientScript.RegisterStartupScript(this.GetType(), "redirect",
        "location.href = '../Main/Success.aspx'", true);
}

我该如何解决这个问题?

1 个答案:

答案 0 :(得分:0)

您可以使用ScriptManager

protected void redirector_Click(object sender, EventArgs e)
{
    ScriptManager.RegisterClientScriptBlock(this, GetType(), "redirect",
        "location.href = 'ListViewDemo.aspx';", true);
}