【问题标题】:Alert Message is not showing警报消息未显示
【发布时间】:2011-07-11 13:48:15
【问题描述】:

我是开发新手,我想在按钮单击后显示警报消息,然后我想在另一个页面上重定向。我的按钮代码如下:

 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 它将正常工作。

请建议我在重定向到另一个页面后如何调用他的警报消息。

【问题讨论】:

  • 好友请求?是你吗,扎克伯格?

标签: javascript asp.net


【解决方案1】:

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

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

您需要做的是在 Javascript 中重定向或使用除 Alert 之外的其他东西来显示消息。

解决方案 1

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

解决方案 2

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

【讨论】:

  • 嗯,这是基本的......按钮处理或javascript重定向......我不明白你的问题。你想要一个教程来做按钮点击?
【解决方案2】:

像这样添加你的脚本:

 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);

【讨论】:

    【解决方案3】:

    不要使用 Response.Write 来呈现您的 JavaScript。请改用 RegisterClientScriptBlock 或 RegisterStartupScript。

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

    【讨论】:

      猜你喜欢
      • 2014-02-21
      • 2016-04-04
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-07-05
      相关资源
      最近更新 更多