1. using System;
  2. using System.Collections.Generic;
  3. using System.Text;
  4. using System.Web;
  5. using System.Web.UI;
  6. /// <summary>
  7. /// 一些常用的Js调用
  8. /// 采用ClientScript.RegisterStartupScript(string msg)的方式输出,不会改变xhtml的结构,
  9. /// 不会影响执行效果。
  10. /// 为了向下兼容,采用了重载的方式,新版本中要求一个System.Web.UI.Page类的实例。
  11. /// </summary>
  12. public class JScript
  13. {
  14. #region 实现方法
  15. /// <summary>
  16. /// 弹出JavaScript小窗口
  17. /// </summary>
  18. /// <param name="js">窗口信息</param>
  19. public static void Alert(string message, Page page)
  20. {
  21. #region
  22. string js = @"<Script language='JavaScript'>
  23. alert('" + message + "');</Script>";
  24. //HttpContext.Current.Response.Write(js);
  25. if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "alert"))
  26. {
  27. page.ClientScript.RegisterStartupScript(page.GetType(), "alert", js);
  28. }
  29. #endregion
  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, Page page)
  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. if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "AlertAndRedirect"))
  42. {
  43. page.ClientScript.RegisterStartupScript(page.GetType(), "AlertAndRedirect", string.Format(js, message, toURL));
  44. }
  45. #endregion
  46. }
  47. /// <summary>
  48. /// 回到历史页面
  49. /// </summary>
  50. /// <param name="value">-1/1</param>
  51. public static void GoHistory(int value, Page page)
  52. {
  53. #region
  54. string js = @"<Script language='JavaScript'>
  55. history.go({0});
  56. </Script>";
  57. //HttpContext.Current.Response.Write(string.Format(js, value));
  58. if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "GoHistory"))
  59. {
  60. page.ClientScript.RegisterStartupScript(page.GetType(), "GoHistory", string.Format(js, value));
  61. }
  62. #endregion
  63. }
  64. //        /// <summary>
  65. //        /// 关闭当前窗口
  66. //        /// </summary>
  67. //        public static void CloseWindow()
  68. //        {
  69. //            #region
  70. //            string js = @"<Script language='JavaScript'>
  71. //                    parent.opener=null;window.close();
  72. //                  </Script>";
  73. //            HttpContext.Current.Response.Write(js);
  74. //            HttpContext.Current.Response.End();
  75. //            #endregion
  76. //        }
  77. /// <summary>
  78. /// 刷新父窗口
  79. /// </summary>
  80. public static void RefreshParent(string url, Page page)
  81. {
  82. #region
  83. string js = @"<Script language='JavaScript'>
  84. window.opener.location.href='" + url + "';window.close();</Script>";
  85. //HttpContext.Current.Response.Write(js);
  86. if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "RefreshParent"))
  87. {
  88. page.ClientScript.RegisterStartupScript(page.GetType(), "RefreshParent", js);
  89. }
  90. #endregion
  91. }
  92. /// <summary>
  93. /// 刷新打开窗口
  94. /// </summary>
  95. public static void RefreshOpener(Page page)
  96. {
  97. #region
  98. string js = @"<Script language='JavaScript'>
  99. opener.location.reload();
  100. </Script>";
  101. //HttpContext.Current.Response.Write(js);
  102. if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "RefreshOpener"))
  103. {
  104. page.ClientScript.RegisterStartupScript(page.GetType(), "RefreshOpener", js);
  105. }
  106. #endregion
  107. }
  108. /// <summary>
  109. /// 打开指定大小的新窗体
  110. /// </summary>
  111. /// <param name="url">地址</param>
  112. /// <param name="width">宽</param>
  113. /// <param name="heigth">高</param>
  114. /// <param name="top">头位置</param>
  115. /// <param name="left">左位置</param>
  116. public static void OpenWebFormSize(string url, int width, int heigth, int top, int left, Page page)
  117. {
  118. #region
  119. 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>";
  120. //HttpContext.Current.Response.Write(js);
  121. if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "OpenWebFormSize"))
  122. {
  123. page.ClientScript.RegisterStartupScript(page.GetType(), "OpenWebFormSize", js);
  124. }
  125. #endregion
  126. }
  127. /// <summary>
  128. /// 转向Url制定的页面
  129. /// </summary>
  130. /// <param name="url">连接地址</param>
  131. public static void JavaScriptLocationHref(string url, Page page)
  132. {
  133. #region
  134. string js = @"<Script language='JavaScript'>
  135. window.location.replace('{0}');
  136. </Script>";
  137. js = string.Format(js, url);
  138. //HttpContext.Current.Response.Write(js);
  139. if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "JavaScriptLocationHref"))
  140. {
  141. page.ClientScript.RegisterStartupScript(page.GetType(), "JavaScriptLocationHref", js);
  142. }
  143. #endregion
  144. }
  145. /// <summary>
  146. /// 打开指定大小位置的模式对话框
  147. /// </summary>
  148. /// <param name="webFormUrl">连接地址</param>
  149. /// <param name="width">宽</param>
  150. /// <param name="height">高</param>
  151. /// <param name="top">距离上位置</param>
  152. /// <param name="left">距离左位置</param>
  153. public static void ShowModalDialogWindow(string webFormUrl, int width, int height, int top, int left, Page page)
  154. {
  155. #region
  156. string features = "dialogWidth:" + width.ToString() + "px"
  157. + ";dialogHeight:" + height.ToString() + "px"
  158. + ";dialogLeft:" + left.ToString() + "px"
  159. + ";dialogTop:" + top.ToString() + "px"
  160. + ";center:yes;help=no;resizable:no;status:no;scroll=yes";
  161. ShowModalDialogWindow(webFormUrl, features, page);
  162. #endregion
  163. }
  164. /// <summary>
  165. /// 弹出模态窗口
  166. /// </summary>
  167. /// <param name="webFormUrl"></param>
  168. /// <param name="features"></param>
  169. public static void ShowModalDialogWindow(string webFormUrl, string features, Page page)
  170. {
  171. string js = ShowModalDialogJavascript(webFormUrl, features);
  172. //HttpContext.Current.Response.Write(js);
  173. if (!page.ClientScript.IsStartupScriptRegistered(page.GetType(), "ShowModalDialogWindow"))
  174. {
  175. page.ClientScript.RegisterStartupScript(page.GetType(), "ShowModalDialogWindow", js);
  176. }
  177. }
  178. private static string ShowModalDialogJavascript(string webFormUrl, string features)
  179. {
  180. throw new NotImplementedException();
  181. }
  182. //        /// <summary>
  183. //        /// 弹出模态窗口
  184. //        /// </summary>
  185. //        /// <param name="webFormUrl"></param>
  186. //        /// <param name="features"></param>
  187. //        /// <returns></returns>
  188. //        public static string ShowModalDialogJavascript(string webFormUrl, string features)
  189. //        {
  190. //            #region
  191. //            string js = @"<script language=javascript>
  192. //    showModalDialog('" + webFormUrl + "','','" + features + "');</script>";
  193. //            return js;
  194. //            #endregion
  195. //        }
  196. #endregion
  197. }

ASP.NET中常用输出JS脚本的类(来自于周公博客)的更多相关文章

  1. ASP.NET中后台注册js脚本攻略(转)

    用Page.ClientScript.RegisterClientScriptBlock 和Page.ClientScript.RegisterStartupScript:区别:   1.使用Page ...

  2. ASP.NET中常用的几个李天平开源公共类LTP.Common,Maticsoft.DBUtility,LtpPageControl

    ASP.NET中常用的几个开源公共类: LTP.Common.dll: 通用函数类库     源码下载Maticsoft.DBUtility.dll 数据访问类库组件     源码下载LtpPageC ...

  3. ASP.NET中常用的几个李天平开源公共类LTP.Common,Maticsoft.DBUtility,LtpPageControl (转)

    ASP.NET中常用的几个开源公共类: LTP.Common.dll: 通用函数类库     源码下载Maticsoft.DBUtility.dll 数据访问类库组件     源码下载LtpPageC ...

  4. C#中如何使用JS脚本

    C#中如何使用JS脚本 目前在做的组态软件中就使用到了js脚本,这部分js脚本是供用户编写的,用户可以通过我们提供的脚本以及js自身的逻辑,用户就可以随心所欲的控制设备的运行.有比较了几款在C#中执行 ...

  5. 请解释ASP. NET中的web页面与隐藏类之间的关系

    请解释ASP.NET中的web页面与其隐藏类之间的关系 其实页面与其隐藏类之间就是一个部分类的关系,你在页面上放一个一个的控件就是在这个类中定义一个一个的属性, 因为是同一个类的部分类的关系,所以隐藏 ...

  6. 分享Node.js + Koa2 + MySQL + Vue.js 实战开发一套完整个人博客项目网站

    这是个什么的项目? 使用 Node.js + Koa2 + MySQL + Vue.js 实战开发一套完整个人博客项目网站. 博客线上地址:www.boblog.com Github地址:https: ...

  7. python中逐行读取文件的最佳方式_Drupal_新浪博客

    python中逐行读取文件的最佳方式_Drupal_新浪博客 python中逐行读取文件的最佳方式    (2010-08-18 15:59:28)    转载▼    标签:    python   ...

  8. LIGHTX-CMS —— 基于 Node.js,Express.js 以及 SQLite 3 搭建的个人博客系统

    概述 LIGHTX-CMS 是我基于 Node.js,Express.js 以及 SQLite 3 搭建的个人博客发布系统. 项目本身可以拿来部署个人博客网站,同时我认为其也适合用以新手学习 Node ...

  9. C#获取C# DLL中的指定接口的所有实现实例 - qq_19759475的博客 - CSDN博客

    原文:C#获取C# DLL中的指定接口的所有实现实例 - qq_19759475的博客 - CSDN博客 public static List<T> CreateTarInterface& ...

随机推荐

  1. __weak与__block修饰符区别

    API Reference对__block变量修饰符的解释,大概意思: 1.__block对象在block中是可以被修改.重新赋值的. 2.__block对象在block中不会被block强引用一次, ...

  2. [51单片机] Keil C51中变量的使用方法详解

    引言    8051内核单片机是一种通用单片机,在国内占有较大的市场份额.在将C语言用于51内核单片机的研究方面,Keil公司做得最为成功.由于51内核单片机的存储结构的特殊性,Keil C51中变量 ...

  3. windows下的C++ socket服务器(3)

    int make_server_socket(int port) { WSADATA inet_WsaData; WSAStartup(MAKEWORD(), &inet_WsaData); ...

  4. js 函数讲解

    函数 来自<JavaScript 标准参考教程(alpha)>,by 阮一峰 目录 概述 函数的声明 函数的重复声明 圆括号运算符,return 语句和递归 第一等公民 函数名的提升 不能 ...

  5. es6 字符串String的扩展

    新特性:模板字符串 传统字符串 let name = "Jacky"; let occupation = "doctor"; //传统字符串拼接 let str ...

  6. docker 建立私有仓库,24.205为镜像仓库所在主机

    一.下载registry #yum install -y python-devel libevent-devel python-pip gcc xz-devel #python-pip install ...

  7. kafka重新启动时出现:found a corrupted index file due to requirement failed问题解决方法

    问题如下: 解决方法: 删除kafka目录下的日志文件即可解决

  8. 浏览器本地存储(browser-storage)

    https://www.baidufe.com/component/browser-storage/api.html 首页 | API参考 | 升级日志 BrowserStorage.api.set( ...

  9. jmeter函数

    1.常用JMeter函数 1)__regexFunction 正则表达式函数可以使用正则表达式(用户提供的)来解析前面的服务器响应(或者是某个变量值).函数会返回一个有模板的字符串,其中携带有可变的值 ...

  10. 删除XML文件中的空格

    应要求需要删除xml文件中的空格,制表符等字符.要求双引号和xml的text属性中包含的空格不删除. bool delSpace(QFile &file, QString path) //删除 ...