我现在需要在页面跳转前弹出窗口
弹出窗口用的:Response.Write("<script>alert('Hi!')</script>")
跳转窗口用的:Response.Redirect("temp.aspx")但是现在的效果是没弹出就直接跳转了~~无奈啊,此题何解???
弹出窗口用的:Response.Write("<script>alert('Hi!')</script>")
跳转窗口用的:Response.Redirect("temp.aspx")但是现在的效果是没弹出就直接跳转了~~无奈啊,此题何解???
Response.Write(" <script>alert('Hi!');location='temp.aspx' </script>")
这样就可以了既有提示又能跳转
跳转窗口用的:Response.Redirect("temp.aspx")
这样是不行的
如果等你弹出 已经执行到了Response.Redirect("temp.aspx")
所以你基本看不到弹出
可以
Response.Write(" <script>alert('Hi!');location='temp.aspx' </script>")
再加上防止禁用js出现未知错误
Response.End();
/// <summary>
/// 显示消息提示对话框,并进行页面跳转
/// </summary>
/// <param name="page">当前页面指针,一般为this</param>
/// <param name="msg">提示信息</param>
/// <param name="url">跳转的目标URL</param>
public static void ShowAndRedirect(System.Web.UI.Page page, string msg, string url)
{
StringBuilder Builder = new StringBuilder();
Builder.Append("<script language='javascript' defer>");
Builder.AppendFormat("alert('{0}');", msg);
Builder.AppendFormat("top.location.href='{0}'", url);
Builder.Append("</script>");
page.RegisterStartupScript("message", Builder.ToString());
}使用:
ShowAndRedirect(page,"提示","跳转页面");
string strURL = "temp.aspx?UserId=" + this.UserId + "&PUserName=" + System.Web.HttpUtility.UrlEncode(this.lbl_Title.Text);
Response.Write("<script>alert('hi!');");
Response.Write(" location.href=\"" + strURL + "\"; ");
Response.Write("</script>");
楼上几位说的是对的