帝国软件
  设为首页 加入收藏 关于我们
 
解密帝国网站管理系统
栏 目:
 
您的位置:首页 > 技术文档 > ASP.NET编程
HTML 控件基本观念
作者:佚名 发布时间:2005-04-02 来源:不详
 


HTML 控件的优点
    在第二章里我们介绍了一些基本的HTML 标注,这些HTML 标注在以往的静态网页或ASP 动态网页里即可满足我们的需求。但是标准的HTML 标注并没有办法利用程序直接来控制它们的属性、使用方法和接收事件,程序设计师必须另外学习其它如JavaScript 等程序语言才得以控制这些HTML 标注。ASP.NET 为动态网页程序设计带来了许多新的技术,这些技术其中之一就是将所有的HTML 标注对象化,让程序可以直接控制;对象化之后的HTML 标注我们称为HTML控件。我们可以使用如VB.NET 或C# 等语言来撰写控制HTML 控件的程序,ASP.NET 把HTML标注对象化,可以让网页对象的互动、程序的写作及维护变的更轻松容易,也让执行的效率明显的改善不少。ASP.NET 将HTML 标注对象化的好处,我们观察以下程序便了解:

<!--传统的HTML 静态网页写作方式-->
<Html>
<Body>
<A Href="http://www.microsoft.com">请按这里</A>
</Body>
</Html>

    传统的HTML 标注无法利用程序直接控制,这是因为HTML 标注当初设计时并没有彻底对象化;所以如果要动态的利用程序设定标注的属性,必需要插入ASP 程序才可以,如下所示:

<!--为了动态的设定标注的属性,必需在标注中插入许多程序-->
<html>
<%
strAddress="http://www.microsoft.com"
%>
<A href=<%=strAddress%>>请按这里</A>
</html>

    ASP 网页设计师没有办法直接利用程控对象,所以必需在标注后面插入一些ASP 程序代码。这就是为什么以前的ASP 程序代码非常杂乱,常常会看到标注中插入许多叙述的程序,这样会导致程序代码在维护以及阅读上的困难。ASP.NET 为了要解决这种杂乱无章的程序写作风格,便将HTML 标注对象化而产生出HTML 控件。HTML 控件可以让程序直接控制并设定其属性,如下范例所示:

<!--ASP.NET 的HTML 控件可以利用程序直接控制-->
<html>
<A Id="Anchor1" Runat="Server">请按这里</A>
</html>
<Script Language="VB" Runat="Server">
Sub Page_Load()
Anchor1.Href="http://www.microsoft.com"
End Sub
</Script>

    HTML 控件比HTML 标注多了ID 以及Runat 这两种属性。ID 属性表示程序是以本属性来控制对象的,所以任何对象的名称不可重复,不管它们是否为同一种类。而Runat 属性表示这个对象是在Server 端执行,所有的HTML 控件都必须加上这个属性设定值;倘若该对象在程序执行时不需要被程控,则可以忽略ID 属性的设定。我们知道网页在被加载时会先触发Page_Load事件,此时我们就可以利用这个事件进行对象的初值化,以及从数据库抓数据回来等工作,所以我们在Page_Load 事件程序中利用程序指定超级链接控件Anchor1 的Href 属性。这样一来程序代码和HTML 控件分开,程序的架构就不会显的杂乱无章而不好管理。了解HTML 控件可以直接被程序所控制后,我们再来了解HTML 控件对事件的支持:

<html>
<Form Runat="Server">
<Button Id="Button1" Runat="Server" OnServerClick="Button1_Click">
改变字体</Button><BR>
</Form>
<Span Id="Sp1" Runat="Server">原来的字体</Span>
<Script Language="VB" Runat="Server">
Sub Button1_Click(Sender As Object, e As Eventargs)
Sp1.InnerHtml="<B>按下Button1 后出现的字体</B>"
End Sub
</Script>
</html>

    上述程序代码中我们宣告了名为Button1 的Button 控件,除指定Runat 属性值为Server 外还指定了OnServerClick 属性为Button1_Click。OnServerClick 是Button 对象所支持的事件,本事件在使用者按下按钮时便会触发。设定本属性表示发OnServerClick 事件时要执行哪个事件程序,我们将属性值填入Button1_Click 则表示当使用者按下按钮时,便会执行Button1_Click 这
个事件程序。

    Button1_Click 这个事件程序中宣告了对象型态的变量Sender 及事件参数e,分别表示是由哪个对象发出事件,以及发生事件时的相关信息; 每个事件程序中都要加入「Sender As Object, eAs EventArgs」这两个参数宣告。另外Button 控件必需被<Form Runat="Server"> 以及</Form 所包围,我们在介绍Form 的时候会详细说明。程序的执行结果为:

    Span 控件最主要的功能是用来显示文字,设定Span 控件的InnerHtml 属性可以决定Span 控件所显示的文字。由下面的执行结果我们看到了Button1 按下后改变了Sp1 的InnerHtml 属性,所以Sp1 所显示出来的文字变成"按下Button1 后出现的字体"。InnerHtml 属性内容中若含有HTML 标注,这个标注将会被解译并生效;所以按下按钮后不但文字内容变了,而且<B> 标注也被解译并生效,所以出现的文字变成粗体。

 
 
  
评论】【加入收藏夹】【 】【打印】【关闭
※ 相关链接
 ·HTML 控件常用属性  (2005-04-02)
 ·HTML 控件架构  (2005-04-02)
 ·基础HTML 控件  (2005-04-02)
 ·HtmlEncode 以及HtmlDecode 方法  (2005-04-02)
 ·JSP由浅入深(5)—— Scriptlets和  (2005-04-02)
 ·如何实现动态添加Html文档中Form  (2005-03-12)
 ·ADO存取数据库如何与HTML结合  (2005-03-12)
 ·asp实现在web中显示电子表格数据  (2005-03-12)
 ·自己动手,结合javascript和dhtm  (2005-03-12)
 ·FrontPage创建HTML/ASP混合页面  (2005-03-12)

   栏目导行
  PHP编程
  ASP编程
  ASP.NET编程
  JAVA编程
   站点最新
·致合作伙伴的欢迎信
·媒体报道
·帝国软件合作伙伴计划协议
·DiscuzX2.5会员整合通行证发布
·帝国CMS 7.0版本功能建议收集
·帝国网站管理系统2012年授权购买说
·PHPWind8.7会员整合通行证发布
·[官方插件]帝国CMS-访问统计插件
·[官方插件]帝国CMS-sitemap插件
·[官方插件]帝国CMS内容页评论AJAX分
   类别最新
·ASP.NET中为DataGrid添加合计字段
·.text urlRewrite介绍
·利用 ASP.NET 的内置功能抵御 Web
·ASP.NET Cache
·用 WebClient.UploadData 方法 上载
·ASP.NET 程序设计-序
·什么是客户端/伺服端(Client/Serve
·因特网应用程序的开发
·网页的种类
·.NET Framework-Microsoft Visual
 
关于帝国 | 广告服务 | 联系我们 | 程序开发 | 网站地图 | 留言板 帝国网站管理系统