惯性聚合 高效追踪和阅读你感兴趣的博客、新闻、科技资讯
阅读原文 在惯性聚合中打开

推荐订阅源

A
About on SuperTechFans
MongoDB | Blog
MongoDB | Blog
Blog — PlanetScale
Blog — PlanetScale
博客园 - 司徒正美
Stack Overflow Blog
Stack Overflow Blog
钛媒体:引领未来商业与生活新知
钛媒体:引领未来商业与生活新知
aimingoo的专栏
aimingoo的专栏
B
Blog
博客园 - 聂微东
博客园_首页
D
DataBreaches.Net
F
Fortinet All Blogs
小众软件
小众软件
M
MIT News - Artificial intelligence
H
Help Net Security
Microsoft Security Blog
Microsoft Security Blog
The GitHub Blog
The GitHub Blog
大猫的无限游戏
大猫的无限游戏
Apple Machine Learning Research
Apple Machine Learning Research
Microsoft Azure Blog
Microsoft Azure Blog
I
InfoQ
F
Full Disclosure
月光博客
月光博客
酷 壳 – CoolShell
酷 壳 – CoolShell
腾讯CDC
Y
Y Combinator Blog
Google DeepMind News
Google DeepMind News
CTFtime.org: upcoming CTF events
CTFtime.org: upcoming CTF events
博客园 - 【当耐特】
Simon Willison's Weblog
Simon Willison's Weblog
云风的 BLOG
云风的 BLOG
A
Arctic Wolf
C
Cyber Attacks, Cyber Crime and Cyber Security
G
Google Developers Blog
B
Blog RSS Feed
Attack and Defense Labs
Attack and Defense Labs
W
WeLiveSecurity
N
News | PayPal Newsroom
Recent Announcements
Recent Announcements
AI
AI
人人都是产品经理
人人都是产品经理
J
Java Code Geeks
V2EX - 技术
V2EX - 技术
TaoSecurity Blog
TaoSecurity Blog
S
Security Affairs
Martin Fowler
Martin Fowler
Webroot Blog
Webroot Blog
P
Palo Alto Networks Blog
S
Schneier on Security
Latest news
Latest news

博客园 - Steven Xiao

asp.net接收API Post Json数据为空要注意的事项 解决Asp.net 程序在 IIS 5.1 上运行不支持转换Decimal类型小数点的问题 - Steven Xiao 把XML 文件转换为 String 字符串 - Steven Xiao C#语言规范 3.0 版 分享DotNetBar控件制作office 2007风格界面的视频教程(winform office 2007 风格) XMLHttpRequest对象 SQL 2005实现单表分页的查询语句 分享实现web用户控件调用.aspx页面里的方法(从而达到访问母页面中控件的目的) 软件开发者面试百问 分享一个DotNetBar做的三层架构的winForm程序 分享一个不错的js提示信息代码(tooltips) - Steven Xiao - 博客园 dropdownlist实现树型结构的栏目信息 asp.net 2.0实现多语言(二) asp.net 2.0实现多语言(一) 一个小小的WEB程序源代码 網絡收藏: 弹出窗口总结 - Steven Xiao gridview 实现全选和反选--补充 收藏的 sql经典语句 ---来自网上 ASP.NET button控件样式
一个封装的在后台弹出JS Alert消息和JS confirm信息以及跳转到指定的页面
Steven Xiao · 2008-03-23 · via 博客园 - Steven Xiao

//如果是单独放在一个类中,记得要引用System.Web.Extensions,否则 ScriptManager不能用

/******************************************************

 *  Author: 肖煕金

 *  Description:在後台註冊JavaScript腳本彈出信息對話框及確認對話框

 *  Date: 2008-12-27 

 *  注意: 當前的代碼傪適合於在asp.net 2.0,並且安裝了AJAX Extensions 1.0的環境中使用

 *  因為當前的類引用了System.Web.Extensions這個ajax命名空間

*******************************************************/

using System;

using System.Collections.Generic;

using System.Text;

using System.Web;

using System.Web.UI;

///在後台註冊JavaScript腳本彈出信息對話框及確認對話框(需要有MS AJAX環境)

namespace ScriptAlert

{

    /// <summary>

    ///  在後台註冊JavaScript腳本彈出信息對話框及確認對話框(需要有MS AJAX環境)

    /// </summary>

    public class Script

    {

        /// <summary>

        /// 在後台註冊JavaScript腳本彈出信息對話框及確認對話框(需要有MS AJAX環境)

        /// </summary>

        public Script() { }

        /// <summary>

        ///  Javascript方式彈出消息對話框

        /// </summary>

        /// <param name="message">要彈出的消息內容</param>

        /// <param name="page">當前頁面,參數可以直接寫:this 或 Page</param>

        public static void Alert(string message, Page page)

        {

            page.ClientScript.RegisterStartupScript(page.GetType(), null, "alert('" + message + "');", true);

        }

        /// <summary>

        /// 向頁面註冊javascript腳本,這種方式是很靈活的,可以在頁面上註冊任何你想要的js腳本

        /// </summary>

        /// <param name="scriptContent">Javascript腳本的內容,記得不要在腳本兩端加script標誌,script標志程序會自動生成</param>

        /// <param name="page">當前頁面,參數可以直接寫:this 或 Page</param>

        public static void RegisterScript(string scriptContent, Page page)

        {

            page.ClientScript.RegisterStartupScript(page.GetType(), null, scriptContent, true);

        }

        /// <summary>

        /// javascript彈出消息後,跳轉到指定的URL鏈接頁面  

        /// </summary>

        /// <param name="message">要彈出的消息內容</param>

        /// <param name="pageUrl">要跳轉到的頁面鏈接,站內鏈接請填寫相對路徑,站外的鏈接需要加上"http://",如"http://www.baidu.com"</param>

        /// <param name="page">當前頁面,參數可以直接寫:this 或 Page</param>

        public static void AlertAndGotoUrl(string message, string pageUrl, Page page)

        {

            string strScript = "alert('" + message + "');window.location.href='" + pageUrl + "';";

            page.ClientScript.RegisterStartupScript(page.GetType(), null, strScript, true);

        }

        /// <summary>

        /// 利用Ajax的方式彈出消息對話框,這種方式主要用於在用戶控件和UpdatePanel控件中使用,在頁面中也可以使用 

        /// </summary>

        /// <param name="message">要彈出的消息內容</param>

        /// <param name="controlId">控件的ID屬性名稱,用戶控件和頁面中參數為:this,UpdatePanel控件中參數為當前UpdatePanel控件的ID屬性名稱</param>

        public static void AjaxAlert(string message, Control controlId)

        {

            ScriptManager.RegisterStartupScript(controlId, controlId.GetType(), null, "alert('" + message + "');", true);           

        }

        /// <summary>

        /// 利用Ajax的方式向控件(用戶控件和UpdatePanel)或頁面註冊Javascript腳本,這種方式主要用於在用戶控件和UpdatePanel控件中使用,在頁面中也可以使用 

        /// </summary>

        /// <param name="scriptContent">Javascript腳本的內容,記得不要在腳本兩端加script標志,script標志程序會自動生成</param>

        /// <param name="controlId">控件的ID屬性名稱,用戶控件和頁面中參數為:this,UpdatePanel控件中參數為當前UpdatePanel控件的ID屬性名稱</param>

        public static void AjaxRegisterScript(string scriptContent, Control controlId)

        {

            ScriptManager.RegisterStartupScript(controlId, controlId.GetType(), null, scriptContent, true);

        }

        /// <summary>

        ///利用Ajax的方式彈出消息對話框後,跳轉到指定的URL鏈接頁面,這種方式主要用於在用戶控件和UpdatePanel控件中使用,在頁面中也可以使用 

        /// </summary>

        /// <param name="message">要彈出的消息內容</param>

        /// <param name="pageUrl">要跳轉到的頁面鏈接,站內鏈接請填寫相對路徑,站外的鏈接需要加上"http://",如"http://www.baidu.com"</param>

        /// <param name="controlId">控件的ID屬性名稱,用戶控件和頁面中參數為:this,UpdatePanel控件中參數為當前UpdatePanel控件的ID屬性名稱</param>

        public static void AjaxAlertAndGotoUrl(string message, string pageUrl, Control controlId)

        {

            string strScript = "alert('" + message + "');window.location.href='" + pageUrl + "';";

            ScriptManager.RegisterStartupScript(controlId, controlId.GetType(), null, strScript, true);

        }

        /// <summary>

        /// Javascript彈出確認對話框後,並跳轉到指定的URL鏈接頁面

        /// </summary>

        /// <param name="message">要彈出的消息內容</param>

        /// <param name="okGotoUrl">選擇確認(OK)按鈕後要跳轉到的頁面URL,站內鏈接寫相對路徑,站外鏈接需加"http://"</param>

        /// <param name="cancelGotoUrl">選擇取消(Cancel)按鈕後要跳轉到的頁面URL,如果參數為Null或空字符""則返回false(不跳轉),站內鏈接寫相對路徑,站外鏈接需加"http://"</param>

        /// <param name="page">當前頁面,參數可以直接寫:this 或 Page</param>

        public static void ConfirmAndGotoUrl(string message, string okGotoUrl, string cancelGotoUrl, Page page)

        {

            string strScript = "";

            if (String.IsNullOrEmpty(cancelGotoUrl))

            {                 

                strScript = "if(confirm('" + message + "')==true){window.location.href='" + okGotoUrl + "';} else {return false;}";

            }

            else

            {

                strScript = "if(confirm('" + message + "')==true){window.location.href='" + okGotoUrl + "';} else{window.location.href='" + cancelGotoUrl + "';}";

            }

            page.ClientScript.RegisterStartupScript(page.GetType(), null, strScript, true);

        }

        /// <summary>

        /// Javascript彈出確認對話框後,並執行指定的Javascript腳本

        /// </summary>

        /// <param name="message">要彈出的消息內容</param>

        /// <param name="okToScript">選擇確認(OK)按鈕後要執行的javacript腳本內容</param>

        /// <param name="cancelToScript">選擇取消(Cancel)按鈕後要執行的javacript腳本內容,如果參數為Null或空字符""則返回false</param>

        /// <param name="page">當前頁面,參數可以直接寫:this 或 Page</param>

        public static void ConfirmAndExecuteScript(string message, string okToScript, string cancelToScript, Page page)

        {

            string strScript = "";

            if (String.IsNullOrEmpty(cancelToScript))

            {

                strScript = "if(confirm('" + message + "')==true){"+okToScript+"} else{return false;}";

            }

            else

            {

                strScript = "if(confirm('" + message + "')==true){" + okToScript + "} else{" + cancelToScript + "}";

            }

            page.ClientScript.RegisterStartupScript(page.GetType(), null, strScript, true);

        }

        /// <summary>

        /// 利用Ajax方式彈出確認對話框後,並跳轉到指定的URL鏈接頁面,適合於控件(用戶控件和UpdatePanel控件中)和頁面中

        /// </summary>

        /// <param name="message">要彈出的消息內容</param>

        /// <param name="okGotoUrl">選擇確認(OK)按鈕後要跳轉到的頁面URL,站內鏈接寫相對路徑,站外鏈接需加"http://"</param>

        /// <param name="cancelGotoUrl">選擇取消(Cancel)按鈕後要跳轉到的頁面URL,如果參數為Null或空字符""則返回false(不跳轉),站內鏈接寫相對路徑,站外鏈接需加"http://"</param>

        /// <param name="controlId">控件的ID屬性名稱,用戶控件和頁面中參數為:this,UpdatePanel控件中參數為當前UpdatePanel控件的ID屬性名稱</param>

        public static void AjaxConfirmAndGotoUrl(string message, string okGotoUrl, string cancelGotoUrl, Control controlId)

        {

            string strScript = "";

            if (String.IsNullOrEmpty(cancelGotoUrl))

            {

                strScript = "if(confirm('" + message + "')==true){window.location.href='" + okGotoUrl + "';} else {return false;}";

            }

            else

            {

                strScript = "if(confirm('" + message + "')==true){window.location.href='" + okGotoUrl + "';} else{window.location.href='" + cancelGotoUrl + "';}";

            }

            ScriptManager.RegisterStartupScript(controlId, controlId.GetType(), null, strScript, true);             

        }

        /// <summary>

        /// 利用Ajax方式彈出確認對話框後並執行指定的Javascript腳本

        /// </summary>

        /// <param name="message">要彈出的消息內容</param>

        /// <param name="okToScript">選擇確認(OK)按鈕後要執行的javacript腳本內容</param>

        /// <param name="cancelToScript">選擇取消(Cancel)按鈕後要執行的javacript腳本內容,如果參數為Null或空字符""則返回false</param>

        /// <param name="controlId">控件的ID屬性名稱,用戶控件和頁面中參數為:this,UpdatePanel控件中參數為當前UpdatePanel控件的ID屬性名稱</param>

        public static void AjaxConfirmAndExecuteScript(string message, string okToScript, string cancelToScript, Control controlId)

        {

            string strScript = "";

            if (String.IsNullOrEmpty(cancelToScript))

            {

                strScript = "if(confirm('" + message + "')==true){" + okToScript + "} else{return false;}";

            }

            else

            {

                strScript = "if(confirm('" + message + "')==true){" + okToScript + "} else{" + cancelToScript + "}";

            }

            ScriptManager.RegisterStartupScript(controlId, controlId.GetType(), null, strScript, true);  

        }

    }

}

源代码下载:/Files/xiaoxijin/Script.7z

dll文件下载:/Files/xiaoxijin/ScriptAlert.7z