ASP.NET_頁面中彈出對話方塊幫助類

.NET-小棠發表於2020-11-16
    //頁面中彈出對話方塊
    public class MessageBox
    {
        private MessageBox()
        {
        }

        #region 顯示訊息提示對話方塊
        /// <summary>
        /// 顯示訊息提示對話方塊
        /// </summary>
        /// <param name="page">當前頁面指標,一般為this</param>
        /// <param name="msg">提示資訊</param>
        public static void Show(System.Web.UI.Page page, string msg)
        {
           // page.RegisterStartupScript("message", "<script language='javascript' defer>alert('" + msg.ToString() + "');</script>");
            page.ClientScript.RegisterStartupScript(page.GetType(), "message", "<script language='javascript' defer>alert('" + msg.ToString() + "');</script>");
        }

        #endregion

        #region 控制元件點選 訊息確認提示框

        /// <summary>
        /// 控制元件點選 訊息確認提示框
        /// </summary>
        /// <param name="page">當前頁面指標,一般為this</param>
        /// <param name="msg">提示資訊</param>
        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 + "');");
        }
        #endregion

        #region 顯示訊息提示對話方塊,並進行頁面跳轉
        /// <summary>
        /// 顯示訊息提示對話方塊,並進行頁面跳轉
        /// </summary>
        /// <param name="page">當前頁面指標,一般為this</param>
        /// <param name="msg">提示資訊</param>
        /// <param name="url">跳轉的目標URL</param>
        public static void ShowAndRedirect(System.Web.UI.Page page, string msg, string url)
        {
            StringBuilder Builder = new StringBuilder();
            Builder.Append("<script language='javascript' defer>");
            Builder.AppendFormat("alert('{0}');", msg);
            Builder.AppendFormat("location.href='{0}'", url);
            Builder.Append("</script>");
            //page.RegisterStartupScript("message", Builder.ToString());
            page.ClientScript.RegisterStartupScript(page.GetType(), "message", Builder.ToString());

        }
         

        public static void ShowAndRedirect(System.Web.UI.Page page, string msg, string url, bool top)
        {
            StringBuilder Builder = new StringBuilder();
            Builder.Append("<script language='javascript' defer>");
            Builder.AppendFormat("alert('{0}');", msg);
            if (top == true)
            {
                Builder.AppendFormat("top.location.href='{0}'", url);
            }
            else
            {
                Builder.AppendFormat("location.href='{0}'", url);
            }
            Builder.Append("</script>");
           // page.RegisterStartupScript("message", Builder.ToString());
            page.ClientScript.RegisterStartupScript(page.GetType(), "message", Builder.ToString());

        }

        #endregion

        #region 輸出自定義指令碼資訊
        /// <summary>
        /// 輸出自定義指令碼資訊
        /// </summary>
        /// <param name="page">當前頁面指標,一般為this</param>
        /// <param name="script">輸出指令碼</param>
        public static void ResponseScript(System.Web.UI.Page page, string script)
        {
            //page.RegisterStartupScript("message", "<script language='javascript' defer>" + script + "</script>");
            page.ClientScript.RegisterStartupScript(page.GetType(), "message", "<script language='javascript' defer>" + script + "</script>");
        }

        #endregion

    }

相關文章