消息框无法使用页面重定向

时间:2013-07-08 19:50:16

标签: asp.net vb.net

我正在尝试在response.redirect发生之前显示一个确认弹出框。当我使用下面的代码时,我永远不会得到它只是重定向的弹出窗口。知道我错过了什么吗?

Try
        Dim msg As String = "Hello!"
        Dim script As String = "alert('" & msg & "');"
        script += "window.location.href ='frmSummary.aspx'"
        'Navigate to Page 2
        'Page.ClientScript.RegisterClientScriptBlock(this.GetType(), "SCRIPT", script,true);
        System.Web.UI.ScriptManager.RegisterClientScriptBlock(Me, Me.[GetType](), "Test",       script, True)

    Catch ex As Exception

    End Try



    Response.Redirect("~/frmMain.aspx")

4 个答案:

答案 0 :(得分:2)

window.location.href逻辑放入JavaScript confirm而不是alert来电,如下所示:

if (confirm("Do you want to do something?")) {
    // User clicked OK, so redirect
    window.location.href = 'frmSummary.aspx';
}

答案 1 :(得分:2)

在当前代码中,服务器会在渲染回客户端之前重定向到frmMain.aspx。

如果您想通过“确定/取消”按钮向用户显示某些内容,您需要这样的内容 -

protected void Button1_Click(object sender, EventArgs e)
{
    try
    {
        string script = "if(confirm('Are you sure ...?')) {window.location.href ='frmSummary.aspx'; }";
        ScriptManager.RegisterClientScriptBlock(this, this.GetType(), "Test", script, true);
    }
    catch (Exception ex)
    {
    }
}

答案 2 :(得分:1)

我打算猜测它是否指向frmMain.aspx ..?

您尝试在客户端上呈现Javascript,但在呈现页面之前,您正在使用此行执行重定向 - Response.Redirect("~/frmMain.aspx")

尝试评论重定向并重试。

答案 3 :(得分:1)

您可以使用html / css和js创建自己的弹出对话框。另一种方法是创建一个处理确认对话框的js函数...... http://www.w3schools.com/js/js_popup.asp