ASP.NETは、元のページインスタンスコードを閉じずに新しいページを開く

5430 ワード

 
  
Respose.Write("window.open('"+     url     +"');"); ( ):
Respose.Write("window.open('"     +     url     +     "','','resizable=1,scrollbars=0,status=1,menubar=no,toolbar=no,location=no,     menu=no');");

1. Response.Redirect(「XXX.aspx」,true)――直接新しいページに向かい、元のウィンドウが代わります.
2. Response.Write(「window.open('XXX.aspx','_blank')」)――元のウィンドウは保存され、新しいページが追加されました.
3. Response.Write(「window.location='XXX.aspx'」)――新しいページを開き、元のウィンドウが置き換えられます.
4. Server.Transfer(「XXX.aspx」)――新しいページを開く.
5. Response.Write(「window.showModelessDialog('XXX.aspx')」)――元のウィンドウは保存され、ダイアログ形式で新しいウィンドウが開きます.
6. Response.Write(「window.showModelDialog('XXX.aspx')」)――ダイアログ形式で新しいウィンドウが開き、元のウィンドウが代わります.
自分で書く方法もあります.
 
  
public static void ShowMessage(System.Web.UI.Page page, string msg)
{
    page.ClientScript.RegisterClientScriptBlock(page.GetType(), "a", "alert('" + msg.ToString() + "');", true);
}

呼び出し時:
ShowMessage(this,“表示するメッセージ”);
次はクラス全体のコードです.
 
  
using System;
using System.Collections.Generic;
using System.Text;
namespace WorkLogic
{
    ///
    /// 。
    ///

    public class MessageBox
    {
        private MessageBox()
        {
        }
        ///
        ///
        ///

        /// , this
        ///
        public static void ShowMessage(System.Web.UI.Page page, string msg)
        {
            //page.RegisterStartupScript("message", "alert('" + msg.ToString() + "');");
            page.ClientScript.RegisterClientScriptBlock(page.GetType(), "a", "alert('" + msg.ToString() + "');", true);
        }
        public static void ShowMessage(System.Web.UI.UserControl control, string msg)
        {
            control.Page.ClientScript.RegisterClientScriptBlock(control.Page.GetType(), "b", "alert('" + msg.ToString() + "');", true);
        }
        ///
        ///
        ///

        /// , this
        ///
        public static void ShowConfirm(System.Web.UI.WebControls.WebControl Control, string msg)
        {
            //Control.Attributes.Add("onClick","if (!window.confirm('"+msg+"')){return false;}");
            Control.Attributes.Add("onclick", "return confirm('" + msg + "');");
        }
        ///
        /// ,
        ///

        /// , this
        ///
        /// URL
        public static void ShowAndRedirect(System.Web.UI.Page page, string msg, string url, string frame)
        {
            StringBuilder Builder = new StringBuilder();
            Builder.Append(""); <br>            Builder.AppendFormat("alert('{0}');", msg); <br>            Builder.AppendFormat("top." + frame + ".location.href='{0}'", url); <br>            Builder.Append("");
            page.ClientScript.RegisterStartupScript(page.GetType(), "message", Builder.ToString());
        }
        ///
        ///
        ///

        /// , this
        ///
        public static void ResponseScript(System.Web.UI.Page page, string script)
        {
            page.ClientScript.RegisterStartupScript(page.GetType(), "message", "" + script + "");
        }
        ///
        /// ,
        /// , this
        ///
        /// URL
        public static void ShowAndRedirect(System.Web.UI.Page page, string msg, string url)
        {
            StringBuilder Builder = new StringBuilder();
            Builder.Append(""); <br>            Builder.AppendFormat("alert('{0}');", msg); <br>            Builder.AppendFormat("top.location.href='{0}'", url); <br>            Builder.Append("");
            page.ClientScript.RegisterStartupScript(page.GetType(), "message", Builder.ToString());
       }
}
}