网站导航网学 原创论文 原创专题 网站设计 最新系统 原创论文 论文降重 发表论文 论文发表 UI设计定制 论文答辩PPT格式排版 期刊发表 论文专题
返回网学首页
网学原创论文
最新论文 推荐专题 热门论文 论文专题
当前位置: 网学 > 设计资源 > .Net编程 > 正文

ASP.NET中常用输出JS脚本的类

论文降重修改服务、格式排版等 获取论文 论文降重及排版 论文发表 相关服务

在ASP.NET中我们经常需要输出一些JS脚本,比如弹出一个警告窗口,返回到历史页面等JS功能,我看到网上流传得比较广的是马先光写的一个JScript类,这个类基本将经常用到的JS脚本包含了,非常方便,唯一的不足是作者采用的Response.Write(string msg)的办法,这样造成输出的js脚本在<html></html>标签之外,破坏了原有XHTML的结构,所以本人在满足原功能的情况下,对JScript类做了进一步的改善,这个改善采用了重载的办法,增加了一个System.Web.UI.Page类的实例作为参数,不会影响原来的程序代码。

整个程序的代码如下:

  1. using System; 
  2. using System.Collections.Generic; 
  3. using System.Text; 
  4. using System.Web; 
  5. using System.Web.UI; 
  6.  
  7. /// <summary> 
  8. /// 一些常用的Js调用 
  9. /// 添加新版说明:由于旧版普遍采用Response.Write(string msg)的方式输出js脚本,这种 
  10. /// 方式输出的js脚本会在html元素的&lt;html&gt;&lt;/html&gt;标签之外,破坏了整个xhtml的结构, 
  11. /// 而新版本则采用ClientScript.RegisterStartupScript(string msg)的方式输出,不会改变xhtml的结构, 
  12. /// 不会影响执行效果。 
  13. /// 为了向下兼容,所以新版本采用了重载的方式,新版本中要求一个System.Web.UI.Page类的实例。 
  14. /// 创建时间:2006-9-13 
  15. /// </summary> 
  16. public class JScript 
  17.     #region 旧版本 
  18.     /// <summary> 
  19.     /// 弹出JavaScript小窗口 
  20.     /// </summary> 
  21.     /// <param name="js">窗口信息</param> 
  22.     public static void Alert(string message) 
  23.     { 
  24.         #region 
  25.         string js = @"<Script language='JavaScript'
  26.                     alert('" + message + "');</Script>"; 
  27.         HttpContext.Current.Response.Write(js); 
  28.         #endregion 
  29.     } 
  30.  
  31.     /// <summary> 
  32.     /// 弹出消息框并且转向到新的URL 
  33.     /// </summary> 
  34.     /// <param name="message">消息内容</param> 
  35.     /// <param name="toURL">连接地址</param> 
  36.     public static void AlertAndRedirect(string message, string toURL) 
  37.     { 
  38.         #region 
  39.         string js = "<script language=javascript>alert('{0}');window.location.replace('{1}')</script>"
  40.         HttpContext.Current.Response.Write(string.Format(js, message, toURL)); 
  41.         #endregion 
  42.     } 
  43.  
  44.     /// <summary> 
  45.     /// 回到历史页面 
  46.     /// </summary> 
  47.     /// <param name="value">-1/1</param> 
  48.     public static void GoHistory(int value) 
  49.     { 
  50.         #region 
  51.         string js = @"<Script language='JavaScript'
  52.                     history.go({0});   
  53.                   </Script>"; 
  54.         HttpContext.Current.Response.Write(string.Format(js, value)); 
  55.         #endregion 
  56.     } 
  57.  
  58.     /// <summary> 
  59.     /// 关闭当前窗口 
  60.     /// </summary> 
  61.     public static void CloseWindow() 
  62.     { 
  63.         #region 
  64.         string js = @"<Script language='JavaScript'
  65.                     parent.opener=null;window.close();   
  66.                   </Script>"; 
  67.         HttpContext.Current.Response.Write(js); 
  68.         HttpContext.Current.Response.End(); 
  69.         #endregion 
  70.     } 
  71.  
  72.     /// <summary> 
  73.     /// 刷新父窗口 
  74.     /// </summary> 
  75.     public static void RefreshParent(string url) 
  76.     { 
  77.         #region 
  78.         string js = @"<Script language='JavaScript'
  79.                     window.opener.location.href='" + url + "';window.close();</Script>"; 
  80.         HttpContext.Current.Response.Write(js); 
  81.         #endregion 
  82.     } 
  83.  
  84.  
  85.     /// <summary> 
  86.     /// 刷新打开窗口 
  87.     /// </summary> 
  88.     public static void RefreshOpener() 
  89.     { 
  90.         #region 
  91.         string js = @"<Script language='JavaScript'
  92.                     opener.location.reload(); 
  93.                   </Script>"; 
  94.         HttpContext.Current.Response.Write(js); 
  95.         #endregion 
  96.     } 
  97.  
  98.  
  99.     /// <summary> 
  100.     /// 打开指定大小的新窗体 
  101.     /// </summary> 
  102.     /// <param name="url">地址</param> 
  103.     /// <param name="width">宽</param> 
  104.     /// <param name="heigth">高</param> 
  105.     /// <param name="top">头位置</param> 
  106.     /// <param name="left">左位置</param> 
  107.     public static void OpenWebFormSize(string url, int width, int heigth, int top, int left) 
  108.     { 
  109.         #region 
  110.         string js = @"<Script language='JavaScript'>window.open('" + url + @"','','height=" + heigth + ",width=" + width + ",top=" + top + ",left=" + left + ",location=no,menubar=no,resizable=yes,scrollbars=yes,status=yes,titlebar=no,toolbar=no,directories=no');</Script>"
  111.  
  112.         HttpContext.Current.Response.Write(js); 
  113.         #endregion 
  114.     } 
  115.  
  116.  
  117.     /// <summary> 
  118.     /// 转向Url制定的页面 
  119.     /// </summary> 
  120.     /// <param name="url">连接地址</param> 
  121.     public static void JavaScriptLocationHref(string url) 
  122.     { 
  123.         #region 
  124.         string js = @"<Script language='JavaScript'
  125.                     window.location.replace('{0}'); 
  126.                   </Script>"; 
  127.         js = string.Format(js, url); 
  128.         HttpContext.Current.Response.Write(js); 
  129.         #endregion 
  130.     } 
  131.  
  132.     /// <summary> 
  133.     /// 打开指定大小位置的模式对话框 
  134.     /// </summary> 
  135.     /// <param name="webFormUrl">连接地址</param> 
  136.     /// <param name="width">宽</param> 
  137.     /// <param name="height">高</param> 
  138.     /// <param name="top">距离上位置</param> 
  139.     /// <param name="left">距离左位置</param> 
  140.     public static void ShowModalDialogWindow(string webFormUrl, int width, int height, int top, int left) 
  141.     { 
  142.         #region 
  143.         string features = "dialogWidth:" + width.ToString() + "px" 
  144.             + ";dialogHeight:" + height.ToString() + "px" 
  145.             + ";dialogLeft:" + left.ToString() + "px" 
  146.             + ";dialogTop:" + top.ToString() + "px" 
  147.             + ";center:yes;help=no;resizable:no;status:no;scroll=yes"
  148.         ShowModalDialogWindow(webFormUrl, features); 
  149.         #endregion 
  150.     } 
  151.     /// <summary> 
  152.     /// 弹出模态窗口 
  153.     /// </summary> 
  154.     /// <param name="webFormUrl"></param> 
  155.     /// <param name="features"></param> 
  156.     public static void ShowModalDialogWindow(string webFormUrl, string features) 
  157.     { 
  158.         string js = ShowModalDialogJavascript(webFormUrl, features); 
  159.         HttpContext.Current.Response.Write(js); 
  160.     } 
  161.     /// <summary> 
  162.     /// 弹出模态窗口 
  163.     /// </summary> 
  164.     /// <param name="webFormUrl"></param> 
  165.     /// <param name="features"></param> 
  166.     /// <returns></returns> 
  167.     public static string ShowModalDialogJavascript(string webFormUrl, string features) 
  168.     { 
  169.         #region 
  170.         string js = @"<script language=javascript>                             
  171.                             showModalDialog('" + webFormUrl + "','','" + features + "');</script>"; 
  172.         return js; 
  173.         #endregion 
  174.     } 
  175.     #endregion 
  176.  
  177.     #region 新版本 
  178.     /// <summary> 
  179.     /// 弹出JavaScript小窗口 
  180.     /// </summary> 
  181.     /// <param name="js">窗口信息</param> 
  182.     public static void Alert(string message, Page page) 
  183.     { 
  184.         #region 
  185.         string js = @"<Script language='JavaScript'
  186.                     alert('" + message + "');</Script>"; 
  187.         //HttpContext.Current.Response.Write(js); 
  188.         if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "alert")) 
  189.         { 
  190.             page.ClientScript.RegisterStartupScript(page.GetType(), "alert", js); 
  191.         } 
  192.         #endregion 
  193.     } 
  194.  
  195.     /// <summary> 
  196.     /// 弹出消息框并且转向到新的URL 
  197.     /// </summary> 
  198.     /// <param name="message">消息内容</param> 
  199.     /// <param name="toURL">连接地址</param> 
  200.     public static void AlertAndRedirect(string message, string toURL, Page page) 
  201.     { 
  202.         #region 
  203.         string js = "<script language=javascript>alert('{0}');window.location.replace('{1}')</script>"
  204.         //HttpContext.Current.Response.Write(string.Format(js, message, toURL)); 
  205.         if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "AlertAndRedirect")) 
  206.         { 
  207.             page.ClientScript.RegisterStartupScript(page.GetType(), "AlertAndRedirect"string.Format(js, message, toURL)); 
  208.         } 
  209.         #endregion 
  210.     } 
  211.  
  212.     /// <summary> 
  213.     /// 回到历史页面 
  214.     /// </summary> 
  215.     /// <param name="value">-1/1</param> 
  216.     public static void GoHistory(int value, Page page) 
  217.     { 
  218.         #region 
  219.         string js = @"<Script language='JavaScript'
  220.                     history.go({0});   
  221.                   </Script>"; 
  222.         //HttpContext.Current.Response.Write(string.Format(js, value)); 
  223.         if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "GoHistory")) 
  224.         { 
  225.             page.ClientScript.RegisterStartupScript(page.GetType(), "GoHistory"string.Format(js, value)); 
  226.         } 
  227.         #endregion 
  228.     } 
  229.  
  230.     //        /// <summary> 
  231.     //        /// 关闭当前窗口 
  232.     //        /// </summary> 
  233.     //        public static void CloseWindow() 
  234.     //        { 
  235.     //            #region 
  236.     //            string js = @"<Script language='JavaScript'> 
  237.     //                    parent.opener=null;window.close();   
  238.     //                  </Script>"; 
  239.     //            HttpContext.Current.Response.Write(js); 
  240.     //            HttpContext.Current.Response.End(); 
  241.     //            #endregion 
  242.     //        } 
  243.  
  244.     /// <summary> 
  245.     /// 刷新父窗口 
  246.     /// </summary> 
  247.     public static void RefreshParent(string url, Page page) 
  248.     { 
  249.         #region 
  250.         string js = @"<Script language='JavaScript'
  251.                     window.opener.location.href='" + url + "';window.close();</Script>"; 
  252.         //HttpContext.Current.Response.Write(js); 
  253.         if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "RefreshParent")) 
  254.         { 
  255.             page.ClientScript.RegisterStartupScript(page.GetType(), "RefreshParent", js); 
  256.         } 
  257.         #endregion 
  258.     } 
  259.  
  260.  
  261.     /// <summary> 
  262.     /// 刷新打开窗口 
  263.     /// </summary> 
  264.     public static void RefreshOpener(Page page) 
  265.     { 
  266.         #region 
  267.         string js = @"<Script language='JavaScript'
  268.                     opener.location.reload(); 
  269.                   </Script>"; 
  270.         //HttpContext.Current.Response.Write(js); 
  271.         if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "RefreshOpener")) 
  272.         { 
  273.             page.ClientScript.RegisterStartupScript(page.GetType(), "RefreshOpener", js); 
  274.         } 
  275.         #endregion 
  276.     } 
  277.  
  278.  
  279.     /// <summary> 
  280.     /// 打开指定大小的新窗体 
  281.     /// </summary> 
  282.     /// <param name="url">地址</param> 
  283.     /// <param name="width">宽</param> 
  284.     /// <param name="heigth">高</param> 
  285.     /// <param name="top">头位置</param> 
  286.     /// <param name="left">左位置</param> 
  287.     public static void OpenWebFormSize(string url, int width, int heigth, int top, int left, Page page) 
  288.     { 
  289.         #region 
  290.         string js = @"<Script language='JavaScript'>window.open('" + url + @"','','height=" + heigth + ",width=" + width + ",top=" + top + ",left=" + left + ",location=no,menubar=no,resizable=yes,scrollbars=yes,status=yes,titlebar=no,toolbar=no,directories=no');</Script>"
  291.         //HttpContext.Current.Response.Write(js); 
  292.         if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "OpenWebFormSize")) 
  293.         { 
  294.             page.ClientScript.RegisterStartupScript(page.GetType(), "OpenWebFormSize", js); 
  295.         } 
  296.         #endregion 
  297.     } 
  298.  
  299.  
  300.     /// <summary> 
  301.     /// 转向Url制定的页面 
  302.     /// </summary> 
  303.     /// <param name="url">连接地址</param> 
  304.     public static void JavaScriptLocationHref(string url, Page page) 
  305.     { 
  306.         #region 
  307.         string js = @"<Script language='JavaScript'
  308.                     window.location.replace('{0}'); 
  309.                   </Script>"; 
  310.         js = string.Format(js, url); 
  311.         //HttpContext.Current.Response.Write(js); 
  312.         if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "JavaScriptLocationHref")) 
  313.         { 
  314.             page.ClientScript.RegisterStartupScript(page.GetType(), "JavaScriptLocationHref", js); 
  315.         } 
  316.         #endregion 
  317.     } 
  318.  
  319.     /// <summary> 
  320.     /// 打开指定大小位置的模式对话框 
  321.     /// </summary> 
  322.     /// <param name="webFormUrl">连接地址</param> 
  323.     /// <param name="width">宽</param> 
  324.     /// <param name="height">高</param> 
  325.     /// <param name="top">距离上位置</param> 
  326.     /// <param name="left">距离左位置</param> 
  327.     public static void ShowModalDialogWindow(string webFormUrl, int width, int height, int top, int left, Page page) 
  328.     { 
  329.         #region 
  330.         string features = "dialogWidth:" + width.ToString() + "px" 
  331.             + ";dialogHeight:" + height.ToString() + "px" 
  332.             + ";dialogLeft:" + left.ToString() + "px" 
  333.             + ";dialogTop:" + top.ToString() + "px" 
  334.             + ";center:yes;help=no;resizable:no;status:no;scroll=yes"
  335.         ShowModalDialogWindow(webFormUrl, features, page); 
  336.         #endregion 
  337.     } 
  338.     /// <summary> 
  339.     /// 弹出模态窗口 
  340.     /// </summary> 
  341.     /// <param name="webFormUrl"></param> 
  342.     /// <param name="features"></param> 
  343.     public static void ShowModalDialogWindow(string webFormUrl, string features, Page page) 
  344.     { 
  345.         string js = ShowModalDialogJavascript(webFormUrl, features); 
  346.         //HttpContext.Current.Response.Write(js); 
  347.         if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "ShowModalDialogWindow")) 
  348.         { 
  349.             page.ClientScript.RegisterStartupScript(page.GetType(), "ShowModalDialogWindow", js); 
  350.         } 
  351.     } 
  352.     //        /// <summary> 
  353.     //        /// 弹出模态窗口 
  354.     //        /// </summary> 
  355.     //        /// <param name="webFormUrl"></param> 
  356.     //        /// <param name="features"></param> 
  357.     //        /// <returns></returns> 
  358.     //        public static string ShowModalDialogJavascript(string webFormUrl, string features) 
  359.     //        { 
  360.     //            #region 
  361.     //            string js = @"<script language=javascript>                             
  362.     //    showModalDialog('" + webFormUrl + "','','" + features + "');</script>"; 
  363.     //            return js; 
  364.     //            #endregion 
  365.     //        } 
  366.     #endregion 
  • 上一篇资讯: petshop4.0各个文件的作用
  • 设为首页 | 加入收藏 | 网学首页 | 原创论文 | 计算机原创
    版权所有 网学网 [Myeducs.cn] 您电脑的分辨率是 像素
    Copyright 2008-2020 myeducs.Cn www.myeducs.Cn All Rights Reserved 湘ICP备09003080号 常年法律顾问:王律师