javascript警报和更新页面asp.net c#

javascript alert and update page asp.net c#

本文关键字:asp net 更新 javascript      更新时间:2023-09-30

我正在用C#编写asp.net项目。

我在页面default.aspx中有一个按钮,当我单击该按钮然后更新页面时,我需要javascript提醒。我通过以下方式做到这一点:

protected void Button1_Click(object sender, EventArgs e)  
{  
Response.Write("<script language='javascript'>alert('OK');</script>");
Response.Redirect("default.aspx");
}

但是javascript警报不会发生。那个么,如何先出现javascript警报,然后更新页面呢?

它不起作用,因为您正在调用Response.Redirect。在此之前在当前页面上发生的任何事情都将无效,因为在呈现当前页面之前,新页面将立即重定向。

你有几个选择,但我认为你想要的是。。。

protected void Button1_Click(object sender, EventArgs e)
{
  Response.Write("<script type='text/javascript'>");
  Response.Write("alert('OK');");
  Response.Write("document.location.href='default.aspx';");
  Response.Write("</script>");
}

另一种选择是将要显示的消息存储在会话变量中,然后在重定向后将其显示在新页面上,但这更复杂,也需要更新新页面。

试试这个:

protected void Page_Load(....)
{
    this.myButton.Attributes.Add("onclick", "alert('OK'); return true;");
}

或在ASPX 中

<asp:Button runat="server" ID="myButton" onClientClick="alert('OK'); return true;" ... />

要在服务器上处理完某些内容后执行代码,请尝试以下操作:

ASPX

    <asp:ScriptManager runat="server" ID="scriptManager" />
    <asp:Button Text="text" runat="server" OnClick="dd_Click" />

代码隐藏

    protected void dd_Click(object sender, EventArgs e)
    {
        // add your cool stuff
        ScriptManager.RegisterStartupScript(this, typeof(RelatedUpdatePanels), "myKey", "alert('OK');window.location='newurl.aspx';", true);
    }

尝试以下

 protected void Button1_Click(object sender, EventArgs e)  
    { 
      ClientScript.RegisterStartupScript(typeof(Page), "MessagePopUp", "<script   language='JavaScript'>alert('OK'); window.location.href = 'Default.aspx';</script>");  
    }

ClientScript.RegisterStartupScript(Page.GetType(),"validation","alert('无效用户名或密码');document.location.href='Default.aspx';");

ClientScript.RegisterStartupScript(Page.GetType(),"validation","alert('无效的用户名或密码');window.location.href='Default.aspx';");