1 / 18

第 4 章 网站逻辑结构设计( 2 )

第 4 章 网站逻辑结构设计( 2 ). 8. 内容回顾. 验证控件简介 必须字段验证控件 比较验证控件 范围验证控件 正则表达式匹配验证. 内容提要. 验证总结控件 用户控件 利用用户控件实现用户注册 本章实验与习题. 验证总结控件. 验证总结控件用于收集本页所有验证错误,并将它们组织起来显示。

xuxa
Download Presentation

第 4 章 网站逻辑结构设计( 2 )

An Image/Link below is provided (as is) to download presentation Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author. Content is provided to you AS IS for your information and personal use only. Download presentation by click this link. While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server. During download, if you can't get a presentation, the file might be deleted by the publisher.

E N D

Presentation Transcript


  1. 第4章 网站逻辑结构设计(2) 8

  2. 内容回顾 • 验证控件简介 • 必须字段验证控件 • 比较验证控件 • 范围验证控件 • 正则表达式匹配验证

  3. 内容提要 • 验证总结控件 • 用户控件 • 利用用户控件实现用户注册 • 本章实验与习题

  4. 验证总结控件 • 验证总结控件用于收集本页所有验证错误,并将它们组织起来显示。 • 其中,HeadText是头信息,DisplayMode表示错误信息显示方式:List相当于HTML中的<BR>;BulletList相当于HTML中的<LI>;SingleParegraph表示错误信息显示成单一的段落。 <ASP:ValidationSummary id="Validator_ID" RunAT="Server" HeaderText="头信息" ShowSummary="True|False" DiaplayMode="List|BulletList|SingleParagraph"> </ASP: ValidationSummary >

  5. 程序名称:4-05.aspx <%@ Page clienttarget=downlevel Language="VB" %> <h2>请填写您的个人信息:</h2><hr> <form runat="server"> <b>姓名:</b> <asp:TextBox id="Name" MaxLength="20" runat="server" /> <asp:RequiredFieldValidator id="rfv1" ControlToValidate="Name" ErrorMessage="姓名不能为空" Display="Static" runat=server>* </asp:RequiredFieldValidator> <br><b>性别:</b> <asp:RadioButtonList id="Sex" RepeatLayout="Flow" RepeatDirection="Horizontal" runat="server"> <asp:ListItem>男</asp:ListItem> <asp:ListItem>女</asp:ListItem> </asp:RadioButtonList> <asp:RequiredFieldValidator id="rfv2" ControlToValidate="Sex" ErrorMessage="没有选择性别" Display="Static" runat=server>* </asp:RequiredFieldValidator> <asp:Button id="Submit" Text="提交" runat="server" /> <asp:ValidationSummary id="vs" DisplayMode="BulletList" HeaderText="必须做以下输入或选择:" runat="server" /> </form> 验证总结控件

  6. 用户控件 • 除了六种.NET提供的控件,用户还可以自己编写验证控件。 • 其中,“onServerValidateFunction”表示用户必须定义一个函数来验证输入。 <ASP:CustomValidator id="Validator_ID" RunAt="Server" controlToValidate="要验证的控件" onServerValidateFunction="验证函数" errorMessage="错误信息" Display="Static|Dymatic|None"> 占位符 </ASP: CustomValidator >

  7. 用户控件 程序名称:4-06.aspx <%@ Page clienttarget=downlevel Language="VB" %> <script Language="VB" runat="server"> Sub Page_Load(Sender As Object, e As EventArgs) Try int i=int.Parse(args.Value) args.IsValid=((i%2)==1) Catch e As Exception args.IsValid = false End Try End Sub </script><form runat="server"> <asp:Label id="Message" runat="server" Text="请输入奇数:" Font-Name="Verdana" Font-Size="10pt" /> <p> <asp:TextBox id="txtOdd" runat="server" /> <asp:CustomValidator id="cv" ControlToValidate="txtOdd" OnServerValidate="ServerValidation" ErrorMessage="不是奇数!" Display="Static" runat="server"/> <p> <asp:Button id="Button1" Text="验证" runat="server"/> </form> • 程序实现了必须输入奇数的验证,通过用户用户函数来实现。 • 当输入偶数或者字母的时候,函数返回值为false,验证控件提示出错信息

  8. 实验:网上书店用户控件 • 实验目标: • 了解:用户控件的基本概念。 • 熟悉:用户控件的编写。 • 掌握:用户控件实现注册界面。

  9. 步骤1:用户控件的编写方法 • .NET控件除了内置的HTML服务器端控件和Web服务器端控件,用户还可以编写用户控件。 • 编写的用户控件,也称之pagelets,pagelets程序的扩展名为“ascx”,程序4-07.ascx是一个pagelets。

  10. 用户控件 案例名称:用户用户控件 程序名称:4-07.ascx <p>用户自定义控件</p> 案例名称:用户控件 程序名称:4-08.aspx <%@ Page Language="VB" %> <%@ Register TagPrefix="myCo" TagName="myTxt" Src="4-07.ascx" %> <myCo:myTxt runat="server" />

  11. 注册控件 • 注册控件,需要先定义三个属性: • TagPrefix 标记前缀,定义控件的命名空间。 • TagName 标记名指向所使用控件的名字。 • Src 指向控件的资源文件,使用相对路径("control.ascx" 或 "/path/control.ascx"),不能使用物理路径("C:\path\control.ascx.")。

  12. 用户控件的编写方法 • 用户控件的编写方法与ASP.NET页面一样,唯一不同的是用户控件不能包含<html>、<body>和<form>元素。 • 因此,当已经开发好一个ASP.NET页面的时候,若想将该页面转化为用户控件,只要将<html>、<body>和<form>元素都删除,将Web Form中的@page换成@Control,将文件扩展名改为ascx,就可以了。

  13. 步骤2:用户控件实现注册界面 案例名称:利用用户控件实现用户注册 程序名称:4-09.ascx <% @Control className="UcLogin" %> <script language="VB" runat="server"> Sub RegBtn_Click (Sender As Object, e As EventArgs) Message.Text = "<br>"; Message.Text += "<b>用户名是:</b>"+Name.Text+"<br>"; Message.Text += "<b>密码是:</b>"+Pass.Text+"<br>"; End Sub </script> <b>用户名:</b><ASP:TextBox id="Name" runat="server"/> <b>密码:</b> <ASP:TextBox id="Pass" TextMode="Password" runat="server"/> <ASP:Button Text="注册" OnClick="RegBtn_Click" runat="server"/> <ASP:Label id="Message" runat="server"/>

  14. 利用用户控件实现用户注册 • 用户控件不能单独执行,必须包含在ASP.NET页面中。 案例名称:利用用户控件实现用户注册 程序名称:4-10.aspx <%@ Register TagPrefix="ucasp" TagName="Login" Src="login.ascx" %> <form runat="server"> <ucasp:Login id="Login1" runat="server"/> </form>

  15. 本章习题 • 4、编写的用户控件,也称之pagelets,pagelets程序的扩展名为______________。 • ascx

  16. 本章习题 • 1、下面的控件,是验证控件的有( ) • A 必须字段验证控件 B 范围验证控件 • C 上传控件 D 日期控件 • 2、下面的说法,正确的是( ) • A 在.NET以前的版本中,验证逻辑一般由客户端的JavaScript来实现。. NET中使用验证控件取代了原来的验证方式。 • B 脚本中中包含对脚本WebUIValidation.js的引用。在默认的情况下,客户断验证是激活的,会出现脚本找不到的消息框。 • C 要关闭客户端验证,只要在文件头加上<%@ Page clienttarget=downlevel %>。 • D 用户控件的编写方法与ASP.NET页面一样,唯一不同的是用户控件不能包含<html>、<body>和<form>元素。 • AB ABCD

  17. 本章习题 • 1、验证控件包括哪几个?有什么作用。 • 2、简述用户控件的编写方法。

  18. 本章总结 • 验证总结控件 • 用户控件 • 利用用户控件实现用户注册 • 本章实验与习题

More Related