警报消息未显示

时间:2011-07-11 13:48:15

标签: javascript asp.net

我是开发新手,我希望在按钮点击后显示警告消息,之后我想重定向另一个页面。我的按钮代码如下:

 protected void ImageButton1_Click(object sender, ImageClickEventArgs e)
{
    Response.Write("<script type='text/javascript'> alert('Please wait for approval!');</script>");
                Response.Redirect("~/profile/scrapbook.aspx?uid=" + Request.QueryString["uid"], false);
}

在这种情况下警报不起作用,如果我删除了Response.Redirect,那么它将正常工作。

请建议我在另一页重定向后如何拨打警报信息。

3 个答案:

答案 0 :(得分:1)

您正在混合服务器端和客户端代码。

Response.Redirect("~/profile/scrapbook.aspx?uid=是服务器端,警报不会等待用户执行它的操作......

您需要的是在Javascript中重定向或使用除警报之外的其他信息。

解决方案1 ​​

当用户按下您在Javascript中进行重定向时,您在Javascript(客户端)中显示警报消息。

解决方案2

您在HTML中显示一条消息,其中包含一个ASP按钮,该事件将调用服务器并将您的用户重定向到您想要的页面。

答案 1 :(得分:1)

像这样添加你的脚本:

 const string scriptString = "<script type='text/javascript'> alert('Your friend request sent to the user! Please wait for approval!');</script>";
                ClientScriptManager script = Page.ClientScript;
                script.RegisterClientScriptBlock(GetType(), "randomName", scriptString);

答案 2 :(得分:0)

不要使用Response.Write来渲染JavaScript。改为使用RegisterClientScriptBlock或RegisterStartupScript。

您的示例应该使用RegisterStartupScript,因为它正在渲染执行脚本,而不是函数声明。