ASP .NET – 服务器控件
ASP .NET教程
ASP .NET表单
ASP.NET绑定
ASP.NET数据库
数据库连接
手册
示例
ASP .NET示例
ASP .NET - 服务器控件
[前一节] [后一节]
服务器控件是能够被服务器识别的标签。
传统ASP的局限性
下面这段是从前一章复制的:
<html>
<body bgcolor="yellow">
<center>
<h2>你好,TOM!</h2>
<p><%Response.Write(now())%></p>
</center>
</body>
</html>
上面这段代码表明了传统ASP的局限性:代码块不得不放在你想要输出所在的地方。
使用传统ASP不可能把可执行代码从HTML中分离出来。这使得页面难于阅读和维护。
ASP .NET - 服务器控件
上面提到,ASP .NET已经用服务器控件解决这个“代码缠绕”的问题。
服务器控件是能够被服务器识别的标签。
服务器控件有三种:
ASP .NET – HTML服务器控件
HTML服务器控件是可被服务器识别的HTML标签。
ASP .NET文件中的HTML元素默认情况下被当作文本。要使这些元素成为可编程的,要给HTML元素加上 runat="server" 属性。这个属性指明此元素将被当作服务器控件对待。加上id属性用以识别此服务器控件。这个id标识可以用来在运行时控制此服务器控件。
注意:所有的HTML服务器控件必须处于带有runat="server"属性的<form>标签之内。runat="server"属性指明此表单将在服务器上被处理。它还指明在此表单之内的控件可以被服务器脚本访问。
在下面的示例中我们在一个.aspx中声明一个HtmlAnchor服务器控件。然后我们在一个事件句柄(事件句柄是对一指定事件执行的子程序)中控制此HtmlAnchor控件的Href属性。 Page_Load事件是可被ASP .NET识别的许多事件之一:
<script runat="server">
Sub Page_Load
link1.HRef="http://http://www.zjjv.com///tom/index.html"
End Sub
</script>
<html>
<body>
<form runat="server">
<a id="link1" runat="server">访问TOM在线!</a>
</form>
</body>
</html>
可执行代码已经被挪到HTML之外了。
ASP .NET – Web服务器控件
Web服务器控件是可被服务器识别的特殊的ASP .NET标签。
象HTML服务器控件一样,Web服务器控件也是在服务器端被创建并且需要有runat="server"属性才能起作用。然而,Web服务器控件不一定要对应任何已经存在的HTML元素,并且它们可以表述更为复杂的元素。
创建一个Web服务器控件的语法是:
<asp:control_name id="some_id" runat="server" />
在下面的示例中我们在一个.aspx文件中声明一个Button服务器控件。然后对Click事件创建一个事件句柄来改变按钮上的文字:
<script runat="server">
Sub submit(Source As Object, e As EventArgs)
button1.Text="请你点击这里!"
End Sub
</script>
<html>
<body>
<form runat="server">
<asp:Button id="button1" Text="点击这里!"
runat="server" OnClick="submit"/>
</form>
</body>
</html>
ASP .NET – 验证服务器控件
验证服务器控件用来验证用户输入。如果用户输入不能通过验证,它将向用户显示一个错误信息。
每个验证控件履行某种特定类型的验证(例如禁止某一个特定值或者某一范围的值)。
默认情况下,当一个Button、ImageButton或者LinkButton控件被点击的时候将进行页面验证。通过把CausesValidation属性设置为false,你也可以阻止在点击按钮控件时的验证。
创建一个验证服务器控件的语法是:
<asp:control_name id="some_id" runat="server" />
在下面示例中我们在一个.aspx文件中声明一个TextBox控件、一个Button控件和一个RangeValidator控件。如果验证失败,将在RangeValidator 控件中显示“数值必须在1到100之间!”:
<html>
<body>
<form runat="server">
输入一个1到100之间的数字:
<asp:TextBox id="tbox1" runat="server" />
<br /><br />
<asp:Button Text="提交" runat="server" />
<br />
<asp:RangeValidator
ControlToValidate="tbox1"
MinimumValue="1"
MaximumValue="100"
Type="Integer"
EnableClientScript="false"
Text="数值必须在1到100之间!"
runat="server" />
</form>
</body>
</html>
[前一节] [后一节]
本站教程均为老猫根据外文资料翻译整理,将逐步刊出。此版本内容保证国内绝无仅有,由于时间、水平有限,有不妥之处欢迎指正。
如果能对您有所帮助,敬请赞助,老猫不胜感激!
1. 网上乞讨:
在您任何方便的时候,向以下帐号存入10元人民币(当然越多越好)。
交通银行太平洋卡
601428 7091 5592604
2. 广告投放:
在任何指定页面投放各种形式广告,价格优惠。
3. 代为宣传:
以任何形式向您的亲朋好友推荐。