0

私は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アラートを表示してからページを更新するにはどうすればよいですか?

4

4 に答える 4

3

を呼び出しているため、機能していません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>");
}

もう1つのオプションは、表示するメッセージをセッション変数などに保存し、リダイレクト後に新しいページに表示することです。ただし、これはより複雑で、新しいページも更新する必要があります。

于 2012-07-17T09:56:27.673 に答える
3

これを試して:

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);
    }
于 2012-07-17T09:32:27.880 に答える
2

フォローしてみてください

 protected void Button1_Click(object sender, EventArgs e)  
    { 
      ClientScript.RegisterStartupScript(typeof(Page), "MessagePopUp", "<script   language='JavaScript'>alert('OK'); window.location.href = 'Default.aspx';</script>");  
    }
于 2012-07-17T09:40:37.753 に答える
0

ClientScript.RegisterStartupScript(Page.GetType(), "validation", "alert('無効なユーザー名またはパスワード'); document.location.href='Default.aspx';");

また

ClientScript.RegisterStartupScript(Page.GetType(), "validation", "alert('無効なユーザー名またはパスワード'); window.location.href='Default.aspx';");

于 2014-08-24T19:54:44.830 に答える