我正在尝试在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")
答案 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