ASP.NET 2.0中的ClientScriptManager类用法—如何添加客户端事件

在ASP.NET2.0中,ClientScriptManager 类通过键 String 和 Type 唯一地标识脚本。具有相同的键和类型的脚本被视为重复脚本。因此,我们可以使用脚本类型来避免混淆可能用在页中的来自不同用户控件的相似脚本。

<html>
<head>
  <title>ClientScriptManager Example</title>
 </head>
 <body>
   <form id="Form1"
     runat="server">
    <input type="text" id="Message"> <input type="button" value="ClickMe" onclick="DoClick()">
   </form>
 </body>
</html>

1 <%@ Page Language="C#"%>
2 <script runat="server">
3  public void Page_Load(Object sender, EventArgs e)
4  {
5   // 定义客户端脚本类型和名称
6   String csname1 = "PopupScript";
7   String csname2 = "ButtonClickScript";
8   Type cstype = this.GetType();
9    
10   // 实例化客户端脚本新类
11   ClientScriptManager cs = Page.ClientScript;
12
13   // 注册客户端起始脚本,在加载页时显示客户端警报消息
14   if (!cs.IsStartupScriptRegistered(cstype, csname1))
15   {
16    String cstext1 = "alert('Hello World');";
17    cs.RegisterStartupScript(cstype, csname1, cstext1, true);
18   }
19
20   // 注册客户端执行脚本,定义 HTML 按钮的 onClick 事件的客户端处理程序
21   if (!cs.IsClientScriptBlockRegistered(cstype, csname2))
22   {
23    StringBuilder cstext2 = new StringBuilder();
24    cstext2.Append("<script type=text/javascript> function DoClick() {");
25    cstext2.Append("Form1.Message.value='Text from client script.'} </");
26    cstext2.Append("script>");
27    cs.RegisterClientScriptBlock(cstype, csname2, cstext2.ToString(), false);
28   }
29  }
30 </script>

时间: 2024-08-02 07:00:12

ASP.NET 2.0中的ClientScriptManager类用法—如何添加客户端事件的相关文章

ASP.NET2.0中的ClientScriptManager 类用法

asp.net|client ASP.NET2.0中的ClientScriptManager 类用法-如何添加客户端事件 在ASP.NET2.0中,ClientScriptManager 类通过键 String 和 Type 唯一地标识脚本.具有相同的键和类型的脚本被视为重复脚本.因此,我们可以使用脚本类型来避免混淆可能用在页中的来自不同用户控件的相似脚本. <html>  <head>    <title>ClientScriptManager Example<

在ASP.NET 2.0中操作数据之五十四:添加新记录时包含一个文件上传选项_自学过程

导言: 在前面2节教程,我们探讨了如何使用FileUpload控件从客户端向服务器上传文件,以及如何在数据Web控件里显示二进制数据. 在本节,我们将创建一个web页面以添加新的种类.除了为类的name和description属性添加TextBoxes控件外,我们还要在页面上添加2个FileUpload控件--一个用来上传新类的图片,另一个用来上传类的小说明册子.上传的图片将直接存储在新记录的Picture列.与此相反,小册子将存储在~/Brochures 文件夹,同时将文件路径存储在新记录的B

在ASP.NET 2.0中操作数据之三:创建母版页和站点导航_自学过程

导言 通常,用户友好的个性化站点都有着一致的,站点统一的页面布局和导航体系.Asp.net 2.0引入的两个新特性给我们在统一站点的页面布局和站点导航上提供了简单而有效的工具,它们是母板页和站点导航.母板页允许开发者创建统一的站点模板和指定的可编辑区域.这样,aspx页面只需要给模板页中指定的可编辑区域提供填充内容就可以了,所有在母板页中定义的其他标记将出现在所有使用了该母板页的aspx页面中.这种模式允许开发者可以统一的管理和定义站点的页面布局,因此可以容易的得到拥有统一的视觉和感觉的页面并且

ASP.NET 2.0 中的客户端脚本

asp.net|脚本|客户端 在使用 ASP.NET 的时候,我们仍然在许多情况下需要使用客户端脚本.以下是笔者根据自己的经验和一些粗浅的研究,对此作一个简要的总结. 一.在 HTML 里直接写脚本 这个方法是最简单的,直到如今我写网页的时候也几乎还是使用最多的一种方式.也许一些经常使用 RegisterClientScriptBlock 的人会觉得这种方法老土,不过在我看来,它除了可以减少编译时间以外,更主要的是可以减少代码量,可读性也要好一些,更或许还可以避免一些潜在的错误. 但是有些情况下

ASP.NET 2.0中的客户端回调

asp.net|客户端 有时我们需要使用JavaScript回调服务端以避免回发过程中带来的页面刷新,这样不但减少了页面刷新的延时而且服务端无需处理每次回发的大量视图状态(View State)信息,应用程序的整体性能会有很大的提高.在ASP.NET 2.0中,引入了一个称为"客户端回调"的功能,利用这个内建的解决方案我们可以轻松实现客户端脚本和服务器端代码间的交互,从而避免了页面因回发带来的频繁刷新. 为了实现客户端回调,你的页面类必须实现一个ICallbackEventHandle

在ASP.NET 2.0中建立站点导航层次(1)

站点导航提供程序--ASP.NET 2.0中的站点导航提供程序暴露了应用程序中的页面的导航信息,它允许你单独地定义站点的结构,而不用考虑页面的实际物理布局.默认的站点导航提供程序是基于XML的,但是你也可以通过编写自定义的提供程序,从任何后端位置暴露这些信息. 站点导航API--站点导航API用于在应用程序的代码中访问站点导航信息,它摘录了导航信息存储的细节.你可以使用API来编程访问应用程序的导航节点. 导航控件--导航控件为页面之间的导航提供了通用的UI,例如树视图.菜单和breadcrum

抢先试用ASP.NET 2.0中的新型安全控件

asp.net|安全|控件 一. 引言 与ASP.NET 2.0一同上市的有几个新的安全控件-它们位于工具的Login选项卡中(见图1)-这些控件大大简化了Web开发人员的工作.通过使用这些新的安全控件,现在你可以执行例如用户登录.注册.口令改变等的任务:而且,为此做出的努力仅是拖放相应的控件到你的Web表单上去.在本文中,我将向你展示怎样使用这些新控件来实现用户认证. 首先,让我们探索一下LoginView.LoginStatus和LoginName三个控件的使用.首先,让我们使用Visual

asp.net 2.0中的ValidationGroup

asp.net|asp.net 在asp.net 1.1中,对于验证类控件,在使用时,遇到有的不需要验证的控件时,是十分麻烦的,就是说不可能有选择验证某些控件,而在asp.net 2.0中,新增加了validationgroup属性,可以指定验证某些控件,例子如下: <html> <body> <form runat="server"> <asp:textbox id="TextBox1" runat="serve

ASP.NET 2.0中实现跨页面提交

asp.net|页面 在ASP.NET 1.X 版本中,页面都是提交到自己本身,并不能方便的指定需要提交的目的页面.例如FirstPage.aspx中的button只能提交到FirstPage.aspx,而不能提交到SecondPage.aspx.很多时候,ASP.NET 1.X这样工作方式使我们的开发方式受到不少限制.熟悉ASP/JSP/PHP的朋友大概很不习惯,因为以前经常使用的提交方式突然无法使用,虽然也有解决这个问题的方法(演示Webcast),可是过程太烦琐,不甚方便.令我们高兴的是,