asp网络编程:在服务器端控制网页

  使用.Net和C#开发Web应用程序往往能给我们很大的启示,尤其在开发相对简单的例行任务时就更是如此。例如,在许多时候,我们都需要有条件地显示一个网页的一部分。需要这么做的原因有许多,例如,根据用户的角色,有一部分是它不应当看到的。或者,我们也可以考虑搜索功能,只有点击了一个链接后,搜索选项才是可用的。

  我们先来解释一下解决这一问题的方法,然后再详细地解释所使用的代码。在.Net中开发Web应用程序,我们既可以使用服务器端的Web控件(Web表单)也可以使用HTML控件。使用.NET开发Web应用程序的重点是服务器端控件。我们在本文中就使用了Web表单服务器端控件。

  Panel是一个服务器端的Web表单控件,一个Panel控件就是HTML网页上的一个矩形区域,它是否可见可以在服务器端进行控制。因此,首先,我们可以从将HTML代码段放在一个Panel控件中,HTML代码段可以由服务器端控件和客户端控件组成。一旦我们将Panel控件的visibility属性设置为“false”,则整个HTML代码段就成为不可见的了。其次,我们可以使用名字为LinkButton的另一个Web表单控件,它本质上是一个超级链接,但通过服务器端的OnClick方法,它可以起到按钮的作用。在这种方法中,我们只要简单地访问Panel对象的C#语言表示,并将其visibility属性设置为true或false,网页就会自动地刷新自己。

  在.NET中开发Web应用程序的一个重要差别是,网页上的每个控件都被表示为服务器端的一个.NET对象,而且这些对象(控件)的状态通过与服务器间的多次交互来维护,这就使我们能够对服务器端和客户端的事件作出反应。响应服务器端的事件时,百网页重新刷新时,其内部的所有对象(控件)也都会得到刷新。我们无需再绘制任何控件,这一切都是自动完成的。这种方法最有吸引力的是一个好的面向对象编程人员能够在一种编程语言模式中工作,而且可以方便地使用JavaScript,调试也非常简便。这种方法的一个小问题就是它不能使用FrontPage或Dreamweaver等HTML代码编辑器。一旦这个问题得到了解决,服务器端的编程模式就更完善了。

  下面是编写本文中例子代码所需要的步骤:

  ·为HTML代码段获得Panel控件。

  ·将HTML代码置入Panel控件中。

  ·创建一个LinkButton控件。

  ·提供一个onClick函数。

  ·在按钮的点击函数中隐藏/显示Panel控件。

  1、为HTML代码段获得Panel控件

  打开网页(.aspx)的设计视图,并选择“Webforms控件”工具箱,从工具箱中拖出一个Panel控件到HTML网页的设计视图上。这时就会看到一个矩形框,发改变它的大小,直到能够容下你想输入的HTML代码段。

  下面是HTML设计视图中Panel控件的定义:

  <TABLE cellSpacing=0 cellPadding=0 width=600 bgColor=#ffffff border=0> <?xml:namespace prefix = asp />

  <asp:panel id=TestPanel Width="398px" Height="171px" runat="server">

  HTML GOES HERE

  </asp:panel>

  </TABLE>

  2、将我们的HTML代码输入到Panel控件中

  在Panel控件中编写相关的HTML代码(或将HTML代码拖到Panel控件中),下面是一个例子:

  <asp:panel id=TestPanel Width="398px" Height="171px" runat="server">

  <H2>An example HTML segment that is going to disappear </H2>

  An example drop down

  <asp:DropDownList id=ADropDownListBox runat="server">

  </asp:DropDownList>

  </asp:panel>

  3、创建一个LinkButton控件

  我们需要对这一部分作一些解释。我们为什么会用LinkButton控件取代一个超级链接呢?超级链接意味着我们可以随意到包括当前的网页在内的任意网页上,但并不意味着我们要返回正在修改的网页。另外,也没有象OnClick这样能够处理超级链接的服务器端方法。

  LinkButton的外观和风格与hyperlink相同,但它还有另外二点好处,即:

  ·点击时能够返回同一个网页。

  ·便于使用的OnClick方法。

  下面是一个LinkButton控件定义的例子:

  <asp:LinkButton id=ChangeAppearanceButton runat="server">

  Change Appearance

  </asp:LinkButton>

  4、提供onClick函数

  如果双击LinkButton控件,IDE就会自动地将我们引到服务器端该控件的OnClick方法处,在这里我们就可以编写隐藏Panel控件的代码。

  5、在按钮的OnClick方法中隐藏/显示Panel控件

  下面是OnClick方法的一个例子:

  private void ChangeAppearanceButton_Click(object sender, System.EventArgs e)

  {

  this.TestPanel.Visible = this.TestPanel.Visible ? false : true;

  }

  上面的代码是一个极好的知道如何维护自己状态的用品端编程模式的例子。当用户点击链接时,就会执行上面的代码,但开发人员并没有改变HTML网页的其他部分,控件本身知道如何刷新它们自己。

  结论

  下面是我从.NET模式中精选出来的非常有趣的特性:

  ·服务器端编程模式。

  ·Web表单的状态是自动维护的。

  ·高度一致的前、后端统一对象编程模式。

  ·用处很大的IDE能够提示每个方法和可能的参数。

  ·在网页的HTML视图中编写XML代码也有提示。

  ·配置所需要的统一的web.config。

  尽管本文中的例子相当简单,即使使用传统的方法也能够非常简单地实现,但这种服务器端的编程模式说明了NET的一个有趣的特性,即能够自动维护其状态的一致的统一服务器端编程模式。上海男科医院编辑提醒读者朋友们要是又不懂的可以联系我哦。

时间: 2024-10-10 22:59:42

asp网络编程:在服务器端控制网页的相关文章

asp网络编程:Web程序中网页间数据传递方法小结

我们总是会遇到这样的情况,需要将数值从一个网页传递到另一个网页.在这篇文章中,向你展示了几种从一个网页向另一个网页传递数值的几种方法.在此例子中,创建的网页由一个文本控件和几个按钮控件组成.在文本框中输入的数据通过被标识在按钮控件中的不同方法从一个网页传递到另一个网页. Response.Redirect 让我们首先看一看如何使用Response.Redirect方法传递数据.这是它们之中最简单的方法.在文本框中输入一些数据,并且当你输入完成数据后,按下“Respose.Redirect”按钮.

《C#网络编程高级篇之网页游戏辅助程序设计(扫描版)》

<C#网络编程高级篇之网页游戏辅助程序设计>通过编写C#网络编程语言中具有代表性的实例,向读者深入细致地讲解了如何利用C#语言进行网页游戏辅助程序设计.本书通过大量的代码引导读者一步步学习和掌握C#的网络应用编程的方法和网页游戏辅助程序的设计技术. <C#网络编程高级篇之网页游戏辅助程序设计>涉及的领域包括多线程编程技术.socket套接字编程.tcp协议编程.http协议编程.远程控制技术.木马技术.模拟键盘和鼠标技术.网页游戏辅助程序设计技术等. <C#网络编程高级篇之网

[Python网络编程]gevent httpclient以及网页编码

之前看到geventhttpclient这个项目,https://github.com/gwik/geventhttpclient,官方文档说非常快,由于响应使用了C的解析,所以我一直想把这玩意用到项目中, 这两天一直在纠结这玩意,说实在一句话,比较难用,封装的不给力,最大缺陷如下: 1.不支持重定向,重定向需要自己来写,很费事 2.新建的httpclient对象只能发送同域名的请求 这相当的蛋疼,我花了一点时间封装了一下,解决了上面的两个问题,还增加了自动编解码问题,代码如下: #!/usr/

asp网络编程:用ASP编写下载网页中所有资源的程序

看过一篇关于下载网页中图片的文章,它只能下载以http头的图片,我做了些改进,可以下载网页中的所有连接资源,并按照网页中的目录结构建立本地目录,存放资源. download.asp?url=你要下载的网页 download.asp代码如下: <% Server.ScriptTimeout=9999 function SaveToFile(from,tofile) on error resume next dim geturl,objStream,imgs geturl=trim(from) My

asp网络编程:ASP中实现分页显示的七种武器

在微软的ASP编程体系中,ADO对象的建立,使得从网页访问数据库成为一件易事,特别是ADO的Recordset对象使得控制数据的输出显示更为方便.自由.而在Visual InterDev6.0(以下简称VI6.0)中,由于Script Object Model(以下简称SOM).Design-Time Control(以下简称DTC)以及Data Environment Object Model(以下简称DEOM)等对象模型的引入,使网页对数据库的访问设计显得更为方便. 因为主题方面的原因,关于

asp网络编程:用ASP实现网页BBS

传统的网页BBS大多是采用CGI模式实现的,它的实现要求编程者既要掌握编程语言如Perl或C等,又要了解关于CGI模式的各项技术内容,因此要制作自己的网页BBS确实困难不小.ASP(Active Server Pages 动态服务器主页)的出现,使我们眼前一亮,能不能利用ASP实现网页BBS呢?回答当然是肯定的.ASP的诱人之处就在于它提供了一种简单易学的脚本,并带有许多内置的对象,从而提供了一条简捷的编程之路.[上海治疗阳痿医院] 该BBS主要由用户注册(浏览器端).用户注册(服务器端).加帖

asp网络编程:用ASP构建音乐服务器的方法

---- 音乐服务器(Music Server)是指一个提供音乐在线服务的服务器,它包括高端提供门户服务的网站.Web数据库和低端的操作平台.硬件设施.目前,在Internet和Intranet上有不少这样的站点,特别是在一些高速宽带的局域网中(如校园网),音乐服务器给上网的朋友提供了休闲娱乐的好去处,同时也给网站带来了较高的访问率. ----像其他站点一样,音乐服务器包括网站和硬件两个部分.硬件性能和服务器效率是成正比的,因而如何构建网站才是一个音乐服务器的关键.从目前来看,网站基本有两种类型

asp网络编程:创建移动Web应用程序

介绍 现今移动设备已成为我们生活中的一部分,我们当中的许多人已离不开它们.当这些移动设备连接到Internet时,移动设备的力量将无穷无尽.我们可以在任何时间地点给用户发送数据.典型的移动应用程序是在服务器上使用WML, WMLScript和WBMP开发的. 对于动态WML应用程序,开发者可以使用ASP, JSP, PHP等等.移动设备包括蜂窝电话.寻呼机.掌中浏览器.袖珍PC和车载PC.这些设备中少数支持WML,少数支持HTML,更少数支持同时支持WML和HTML.如果你想确保你的应用程序能在

asp网络编程:使用ASP建设私人的搜索引擎

很多网络爱好者在创建自己的个人主页时,都绞尽脑汁让自己网站的功能更全面.在此,笔者介绍一种使用ASP建立自己的搜索引擎的方法. 基本思路 利用表单将用户提交的搜索关键字存储在变量中,并提交给ASP脚本处理.利用ASP内建的“REQUEST”对象获取变量中的关键字符,随后用“RESPONSE”的“REDIRECT”函数将关键字符转向提交到其他的诸如搜狐.网易等专业搜索引擎中,即可得出搜索结果.使得访客在自己的主页上就可方便地使用各大搜索引擎,无需登录其主页面. 第一步 创建搜索引擎的主页面.在HT