ASP-NET教学设计教案-教程_第1页
ASP-NET教学设计教案-教程_第2页
ASP-NET教学设计教案-教程_第3页
ASP-NET教学设计教案-教程_第4页
ASP-NET教学设计教案-教程_第5页
已阅读5页,还剩170页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

《ASP.NET》

课程教案

2016--2017学年第二学期

任课教师张成年___________

任课班级软件153__________

课程名称ASP.NET_________

课程类型专业必修课_________

总学时80______________

二O一h年二月

授课题目第1章搭建ASP.NET开发环境

授课类型理论课+实验课

多媒体教

教学方法讲授、实例驱动教学手段

授课时间学时分配3

通过本次课程的学习,主要掌握visualstudio开发环境的框

教学目的架知识,安装知识和开发环境常用操作:

框架知识

教学重点页面创建

网站包括的基本要素

教学难点框架知识

其它

教学基本内容注

一、新课导入

我们已经学习了C#程序语言,掌握了面向对象编程的基础,再进一步了解框架相

关知识。包括一个完整网站包括的基本要素和常用的操作。

授课题目第2章服务器控件

授课类型理论课+实验课

多媒体

教学方法讲授、实例驱动教学手段

教学

授课时间学时分配15

通过本次课程的学习,主要掌握以下控件的应用:

Page页面

Label控件

TextBox控件

Button控件

HyperLink控件

Image控件

ImageButton控件

LinkButton控件

教学目的DropDownList控件

ListBox控件

CheckBox控件

CheckBoxList控件

RadioButton控件

RadioButtonList控件

Panel控件

Table控件

BulletedList控件

ImageMap控件

Label控件

TextBox控件

Button控件

DropDownList控件

教学重点ListBox控件

RadioButtonList控件

Panel控件

Table控件

ImageMap控件

ListBox隹件

RadioButtonList控件

教学难点

Table控件

ImageMap控件

其它

教学基本内容备

授课内容提要

第2章服务器控件

(一)Page页面

1.作用

容器:承载控件

2.重要属性

IsPostBack

3.例子

Page.IsPostBack属性

实验:

添加一个Web窗体,在页面上放一个按钮和一个标签(Label)控件,将Label的Text

属性设置为0。

在Page_Load事件中写代码:

if(!Page.IsPostBack)

(

intx=int.Parse(Label2.Text)+1;

Label2.Text=x.ToStringO;

)

运行,不断点击按钮。

改变后对比(去掉if判断)

protectedvoidPage_Load(objectsender,EventArgse)

(

intx=int.Parse(Label2.Text)+1;

Label2.Text=x.ToString0;

)

运行,不断点击按钮。

(二)Label控件

1.作用

显示数据

2.重要属性

BackColor

BorderStyle

BorderWidth

Text

EnableTheming

SkinlD

Height

Width

3.例子

//Label的例子:更改Text属性和背景颜色

floatsalary=4100.2f;

if(salary>2000)

Label1.Text="您需要交税〃;

else

Label1.Text="您不需要交税”;

此处填写更改颜色的代码

Label1.BackColor=...

//Label的例子:更改Text属性和背景颜色

(三)TextBox控件

1.作用

数据输入控件

2.重要属性和方法

BorderColor

BorderStyle

BorderWidth

Text

EnableTheming

SkinlD

TextMode->SingleLine^MultiLine>Password

Readonly

3.例子

TextBox的Readonly属性

测试:

放一个文本框(TextBox),将其Readonly属性设置为true,运行看结果如何?

问题:

在哪里能够修改文本框的值呢?

参考答案:

一是在设计时通过属性窗口修改Text属性,二是在事件中通过代码修改Text属

(四)Button控件

L作用

响应用户操作(鼠标和键盘事件)。

2.重要属性和事件

BorderColor

BorderStyle

BorderWidth

Text

EnableTheming

SkinlD

CausesValidation一是否引发验证

OnClientClick-〉指定单击按钮时执行的客户端脚本代码函数名

UseSubmitBehavior->指示按钮是否呈现为提交按钮,默认为true

PostBackUrl->指定单击此按钮时回发到的页面的URL,默认为本页

在目标页面中用Page.PreviousPage.FindControl()方法获取数据

Click事件

3.例子

标签、文本框、按钮的综合例子一模拟登录程序

用户名匚□用户名5Z

密码匚密码T

知识点:

TextBox的TextMode属性

If语句

弹出提示对话框(可以带上耳机)

protectedvoidButtonl_Click(objectsender,EventArgse)

(

stringuid=〃a〃,pwd=〃123〃;

if((TextBoxl.Text==uid)&&(TextBox2.Text==pwd))

Response.Write(z,<script>alert(,用户名和密码正确!

)〈/script)“);

else

Response.Write(/z<scriptlanguage='javascript,>alertC用户名

和密码不正确!')</script〉“);

)

(五)HyperLink控件

L作用

超级链接

2.重要属性

Text

NavigateUrl

ImageUrl

ToolTip

Target

SkinlD

3.例子

将NavigateUrl设置为default,aspx,然后再

⑴设置Target为空(即默认值),查看效果;

(2)设置Target为_blank,查看效果。

IlyperLink比<aX/a>标记是更方便。

(六)ImageButton控件

L作用

显示图片的按钮

2.重要属性

ImageUrl

ImageAlign

AlternateText

CausesValidation

PostBackUrl

OnClientClick

ToolTip

Click事件

3.例子

ImageButton的例子

BorderWidth为2

BorderColor为红色

创建文件夹pic,存入图片48.gif

ImageUrl=,,"/pic/48.gif〃

(六)LinkButton控件

L作用

显示为超级链接的按钮

2.重要属性

Text

CausesValidation

PostBackUrl

OnClientClick

ToolTip

Click事件

(七)DropDownList控件

L作用

显示数据

2.重要属性

添加项目

联动

AutoPostBack属性

SelectedlndexChanged事件

3.例子

选择吉林界面选择四平

以及四平

2区界面

Page_Load

DropDownListlSelectedlndexChanged

DropDownList2_SelectedIndexChanged

AutoPostBack属性

Buttonl_Click

练习:DropDownList年、月、日联动

2010母年2刁月1v32008▼年23月1v日

3

6

7

8

C)l1n

l11

10

11l12

12l13

l14

l15

5l16

l17

6

7l10

l19

18R

19l21

20l22

21l23

22l24

23^

74l^

25节l27

l28

27l29

284l30

l3_1

(八)ListBox控件

L作用

显示列表

2.重要属性

Items

SelectionMode->Single>Multiple

添加新项目

删除选中项目

查找是否有该项目

清空所有的项目

3.例子

a

sdfs1

ddd

学号

sdfsad

asdsa

似憧非憧

省份名称.

:删除选中项।|电全部清空|

Listltem类型

Listitem的两个重要属性:Text和Value

创建一个Listltem对象:

ListitemLil=newListitem();

Lil.Text="hello";

Lil.Value=“1”;

添加项目一判空、IsPostBack

问题:

每次点按钮都添加了多项,如何解决?

解决方案:

判断是否是第一次,是则添加项;否则什么也不做。

ListBoxl.Items.Add(newListItem(TextBoxl.Text));

添加时判断是否为空

Trim()方法

逻辑:不为空添加新项目;

为空,弹出不允许为空的对话框。

删除的业务逻辑

单项删除

如果有选中的项目则删除,否则提示“没有项目被选中!”

多项删除

从第一项到最后一项循环,如果第i项被选中则删除。

问题:

怎么知道一共有多少项?某项被选中怎么区分?

查找的业务逻辑

如果找到则选中项目,否则提示“没有找到”

删除代码:

ListBoxl.Items.RemoveAt(i);〃根据索引删除项

添加删除确认对话框:

在PageLoad事件中,写入

Buttonl.Attributes[<<onClick,,]=ujavascript:returnconfirm('你确认要删

除吗?');”,然后在Buttonl_OnClick事件中写入您的执行代码。

问题:

多选删除如何实现?

第一想法:

for(inti=0;i<ListBoxl.Items.Count;i++)

if(ListBoxl.Itemsfi].Selected)

(

Response.Write(i+”<br>〃);

ListBoxl.Items.RemoveAt(i);

}

问题:

连续的时候会少删除其中一项,什么原因呢?

改进后的删除代码:

for(inti=ListBoxl.Items.Count-1;i>=0;i­)

〃改变策略:从后往前删除

if(ListBoxl.Items[i].Selected)

(

Response.Write(i+〃<br>〃);

ListBoxl.Items.RemoveAt(i);

)

Response.Write(,z<script>alert(,删除成功!’)</script〉”);

2006级岳晓同学的代码:

for(inti=0;i<ListBoxl.Items.Count;i++)

if(ListBoxl.Items[i].Selected)

(

Response.Write(i+;

ListBoxl.Items.RemoveAt(i);

i二i-1;〃此处做了改进

}

查找方案:

查找要求:

如果有则选中该项,没有则提示“没有满足条件的项目”。

ListBoxl.Items.FindByText(TextBoxl.Text)

ListBoxl.Items.IndexOf(item)

ListBoxl.Items[position].Selected

查找代码:

Listitemitem=newListItem(TextBoxl.Text);

intposition=this.ListBoxl.Items.IndexOf(item);

if(position>=0)

(

ListBoxl.Items[position].Selected=true;

)

else

Response.Write(〃<script>alert('没有满足条件的项目!‘)〈/script)”);

清空所有项目

protectedvoidPage_Load(objectsender,EventArgse)

(

Button5.Attributes[,zonclickz,]=z/javascript:returnconfirm(5Areyousure

todeleteallitems?')”;

)

protectedvoidButton5_Click(objectsender,EventArgse)

(

ListBoxl.Items.Clear();

)

ListBox控件的常用属性和方法

ListBoxl.Items.Count

ListBoxl.Items.Selectedlndex可读写(赋值或被赋值)

ListBoxl.Items[i].Text

ListBoxl.ItemsEi].Selected可读写(赋值或被赋值)

ListBoxl.Items.Add()

ListBoxl.Items.Insert()

ListBoxl.Items.RemoveAt()

ListBoxl.Items.Remove()

ListBoxl.Items.FindByText(TextBoxl.Text)

ListBoxl.Items.IndexOf(item)

(九)CheckBox控件

1.作用

可以多项选择

2.重要属性

属性

Checked

Text

方法

3.例子

您的选择是,喜欢旅游,不喜欢看书,喜欢打球,不喜欢编程,喜欢游泳.

选择您的爱好

□旅游

回看书

口田

□编程

回游泳

回旅游

□看书

回打球

口编程

回游泳

1选挥完或1

CheckBox实现多项选择

添加3个CheckBox和一个Button,内容如图所示。

点击“确定”按钮,提示选择的项目。

protectedvoidButtonl_Click(objectsender,EventArgse)

(

.〃〃

strings=;

if(CheckBox1.Checked)

s=s+"您喜欢"+CheckBoxl.Text;

if(CheckBox2.Checked)

s=s+“您喜欢〃+CheckBox2.Text;

if(CheckBox3.Checked)

s=s+〃您喜欢〃+CheckBox3.Text;

Response.Write(s);

)

选择您的爰好

七文学

七音乐

1tl旅游

pg

(十)CheckBoxList控件

1.作用

相当于一组复选框

2.重要属性

Items

3.例子

CheckBoxList实现多项选择

protectedvoidButton2_Click(objectsender,EventArgse)

(

for(inti=0;i<CheckBoxListl.Items.Count;i++)

(

if(CheckBoxListl.Items[i].Selected)

Response.Write(CheckBoxListl.Items[i].Text);

}

)

(H-)RadioButton控件

1.作用

实现单项选择(互斥)

2.重要属性

Text

AutoPostBack

GroupName

3.例子

鼠标滑过的特效:

鼠标滑过时文本框内容被选中

TextBoxl.Attributes.Add("onMouseOver","this,focus();this,select();;

鼠标点击时文本框内容被清空

TextBoxl.Attributes.Add("onclick","this.value=''");

(十二)Rad沁ButtonList控件

1.作用

相当于一组RadioButton

2.重要属性

Items

3.例子

输入“1964”,点击“查看”按钮

点击“老年”,效果如下:

Of#颌而年龄在60-120三回

(⑥中年]

oo青年

Oo年

®年

O年

1964

出生年份幽

O10W

。】0万以下

010-20万

010-20万

。20万以上

。20万以上

0蔽

处理属性和事件

OText

OAutoPostBack

OGroupName

/protectedvoidPage_Load(objectsender,EventArgse){}

/protectedvoidButtonl_Click(objectsender,EventArgse){}

/protectedvoidRadioButtonl_CheckedChanged(objectsender,EventArgs

e){}

protectedvoidPage_Load(objectsender,EventArgse)

(

TextBoxl.Attributes.Add(〃onMouseOver〃,

“this,focus();this,select();〃);

//TextBoxl.Attributes.Add(,zonMouseOverz,,

“this,focus();this,select();this,value=''〃);

//TextBoxl.Attributes.Add(〃onclick〃,“this.value=,'〃);

)

protectedvoidRadioButtonl_CheckedChanged(objectsender,EventArgse)

(

Response.Write(〃你的年龄在15-30之间〃);

}

(十三)Panel控件

1.作用

容器:相当于组

2.重要属性

GroupingText

3.例子

书上109页例子不讲,直接讲“登录模拟_Panel控件”的例子。

(十四)Table控件

1.作用

容器,用于布局

2.重要属性

HorizontalAlign

BackColor

BorderColor

BorderStyle

BorderWidth

ForeColor

GridLines

Font-Bold

Height

Width

3.组成(结合下图说明)

姓名成绩

黄牍英|

10082纪晓岚

4.例子

书上113页例子的升级,讲“动态创建表格并填充内容参考代码”的例子。

简单总结:Table和Panel实际可以互相嵌套,只是一般最外层是Table.

(十五)BulletedList控件

1.作用

为列表项增加项目符号

2.重要属性和方法

Items属性

Items[i].Text属性

Insert和Add方法

3.例子

书上116页例子加工,讲''动态添加项目和点击文字的即时变化”的例子。

(十六)ImageMap控件

1.作用

相当于把一幅图片虚拟分割成多个区域。

2.重要属性和事件

ImageUrl属性

HotSpotMode属性

Click事件

3.热点区域的划分

I►X轴

新旗搜狐

雅虎网易

|丁PAllt.

,,丫轴

4.例子

书上117页例子强力改造,形成了“网易、搜狐、雅虎、新浪网站导航”的例子。

三、小结

1.本章需要掌握控件的主要属性、方法和事件,利用它们组合形成特定的功能。

2.书上的文字内容不容易理解,通过例子学习更方便,然后再回头。(循环反复)

四、作业

将书上的例子做一遍

五、教学后记

1.服务器控件的作用:

实现用户的交互,提供操作的接口。

2.教材处理:

书上的例子能够满足一定的需求,但是还不够。(Butthat,snotenough)需要

老师自己重新创造例子。(Doityourself)书上的例子有的课上不做了;有的课上让

学生自己做,然后演示;有的很好的、有一定难度的老师组织一起践行。

3.功能驱动法:

首先展示系统的功能(即老师演示程序),让学生有一个直观感受,“知道自己去

哪里”。

4.面向过程与面向对象结合

实际本章体现了堆积木原则,也是利用三种常见的程序结构(面向过程),而控件

的属性、方法则完全是面向对象的思想。

5.学生也很有创造力

实现ListBox多选删除时,岳晓同学与老师的思路不同,同样可以完成删除。

2006级岳晓同学的代码:

for(inti=0;i<ListBoxl.Items.Count;i++)

if(ListBoxl.Items[i].Selected)

(

Response.Write(i+”<br>");

ListBoxl.Items.RemoveAt(i);

此处做了改进

)

六、参考资料

《ASP.NET数据库开发入门与提高》(清华大学出版社)

《VisualC#2005编程实例精粹》(中国水利水电出版社)

《VisualC#.NET可视化程序设计》(清华大学出版社)

《ASP.NET动态网站开发基础教程(C#篇)》(清华大学出版社)

授课题目第3章验证控件

授课类型理论课+实验课

教学方法讲授、实例驱动教学手段多媒体教学

授课时间学时分配5

掌握表单验证控件、比较验证控件、范围验证控件、正则验证控件、

教学目的自定义逻辑验证控件、验证组控件的使用。

框架知识

教学重点页面创建

网站包括的基本要素

教学难点框架知识

其它

教学基本内容

ASP.NET提供了强大的验证控件,它可以验证服务器控件中用户的输入,并在验

证失败的情况下显示一条自定义错误消息。验证控件直接在客户端执行,用户提交后

执行相应的验证无需使用服务器端进行验证操作,从而减少了服务器与客户端之间的

往返过程。

3.1表单验证控件(RequiredFieldValidator)

在实际的应用中,如在用户填写表单时,有一些项目是必填项,例如用户名和密码。

在传统的ASP中,当用户填写表单后,页面需要被发送到服务器并判断表单中的某项

HTML控件的值是否为空,如果为空,则返回错误信息。在ASP.NET中,系统提供了

RequiredFieldValidator验证控件进行验证。使用RequiredFieldVaiidator控件能够指定某

个用户在特定的控件中必须提供相应的信息,如果不填写相应的信息,

RequiredFieldValidator控件就会提示错误信息,RequiredFieldValidator控件示例代码如

下所示。

<body>

<formid="formr,runat="serverM>

<div>

姓名:vasp:TextBoxID="TextBox1Hrunat=Hserver,'></asp:TextBox>

<asp:RequiredFieldValidatorID="RequiredFieldValidator1"runat="serverH

ControlToValidate=,,TextBox1"ErrorMessage=n必填字段不能为空

"></asp:RequiredFieldValidator>

<br/>

密码:vasp:TextBoxID="TextBox2"runat="server"></asp:TextBox>

<br/>

<asp:ButtonID="Button1"runat="server"Text='Button"/>

<br/>

</div>

</form>

</body>

在进行验证时,RequiredFieldValidator控件必须绑定一个服务器控件,在上述代码中,

验证控件RequiredFieldValidator控件的服务器控件绑定为TextBoxl,当TextBox1中的

值为空时,则会提示自定义错误信息“必填字段不能为空”,如图3-53所示。

。无标题页-findovsInternetExplorer

-——3周|X|网L:二SewhP▼

收媒夹号无标题页||分▼&/»

T]

姓名:|必填字段不能

为空

密码:|

Button|

_____________________.

I~厂|~厂街记—I•(呆护植式:鬃用|%125%▼/

图3-53RequiredFieldValidator验证控件

当姓名选项未填写时,会提示必填字段不能为空,并且该验证在客户端执行。当发生

此错误时,用户会立即看到该错误提示而不会立即进行页面提交,当用户填写完成并

再次单击按钮控件时,页面才会向服务器提交。

3.2比较验证控件(CompareValidator)

比较验证控件对照特定的数据类型来验证用户的输入。因为当用户输入用户信息时,

难免会输入错误信息“如当需要了解用户的生日时,用户很可能输入了其他的字符串。

CompareValidator比较验证控件能够比较控件中的值是否符合开发人员的需要。

CompareValidator控件的特有属性如下所示:

□ControlToCompare:以字符串形式输入的表达式。要与另一控件的值进行比较。

□Operator:耍使用的比较。

□Type:要比较两个值的数据类型。

□VaiueToCompare:以字符串形式输入的表达式。

当使用CompareValidator控件时,可以方便的判断用户是否正确输入,示例代码如下

所示。

<body>

<formid="form1Hrunat=',server,,>

<div>

请输入生日:

<asp:TextBoxID="TextBox1"runat="server"x/asp:TextBox>

<br/>

毕业日期:

<asp:TextBoxID="TextBox2"runat="serverH></asp:TextBox>

<asp:CompareValidatorID="CompareValidator1"runat="serverH

ControlToCompare="TextBox2"ControlToValidate="TextBox1”

CulturelnvariantValues="True"EirorMessage="fS入格式错误!请改正!"

Operator="GreaterThanM

Type="Dateu>

</asp:CompareValidator>

<br/>

<asp:ButtonID="Button1"runat=Hserver"Text="Button"/>

<br/>

</div>

</form>

</body>

上述代码判断TextBoxl的输入的格式是否正确,当输入的格式错误时,会提示错误,

如图3-54所示。

图3-54CompareValidator验证控件

CompareValidator验证控件不仅能够验证输入的格式是否正确,还可以验证两个控件之

间的值是否相等。如果两个控件之间的值不相等,CompareValidator验证控件同样会将

自定义错误信息呈现在用户的客户端浏览器中。

3.3范围验证控件(RangeValidator)

范围验证控件(RangeValidator)可以检查用户的输入是否在指定的上限与下限之间。

通常情况下用于检查数字、日期、货币等。范围验证控件(RangeValidator)控件的常

用属性如下所示。

□MinimumValue:指定有效范围的最小值。

□MaximumValue:指定有效范围的最大值。

□Type:指定要比较的值的数据类型。

通常情况下,为了控制用户输入的范围,可以使用该控件。当输入用户的生日时,今

年是2011年,那么用户就不应该输入2012年,同样基本上没有人的寿命会超过100,

所以对输入的日期的下限也需要进行规定,示例代码如下所示。

<div>

请输入生H:<asp:TextBoxID="TextBox1"runat=Mserver"></asp:TextBox>

<asp:RangeValidatorID=nRangeValidator1"runat=nserver"

ControlToValidate="TextBox1"ErrorMessage="超出规定范围,请重新填写"

MaximumValue="2012/1/1MMinimumValue=H1912/1/1'*Type="Date">

</asp:RangeValidator>

<br/>

<asp:ButtonID="Button1"runat='server,'Text="Button"/>

</div>

上述代码将MinimumValue属性值设置为1912/1/1,并能将MaximumValue的值设置为

2012/1/1,当用户的日期低于最小值或高于最高值时,则提示错误,如图3-55所示。

图3-55RangeValidator验证控件

注意:RangeValidator险证控件在进行控件的值的范围的设定时,其范围不仅仅可

以是一个整数值,同样还能够是时间、日期等值。

3.4正则验证控件(RegularExpressionValidator)

在上述控件中,虽然能够实现一些验证,但是验证的能力是有限的,例如在验证的过

程中,只能验证是否是数字,或者是否是日期。也可能在验证时,只能验证一定范围

内的数值,虽然这些控件提供了一些验证功能,但却限制了开发人员进行自定义验证

和错误信息的开发。为实现一个验证,很可能需要多个控件同时搭配使用。

正则验证控件(RegularExpressionValidator)就解决了这个问题,正则验证控件的功能

非常的强大,它用于确定输入的控件的值是否与某个正则表达式所定义的模式相匹配,

如电子邮件、电话号码以及序列号等。

正则验证控件(RegularExpressionValidator)常用的属性是ValidationExpression,它用

来指定用于验证的输入控件的正则表达式。客户端的正则表达式验证语法和服务端的

正则表达式验证语法不同,因为在客户端使用的是JSript正则表达式语法,而在服务

器端使用的是Regex类提供的正则表达式语法。使用正则表达式能够实现强大字符串

的匹配并验证用户的输入的格式是否正确,系统提供了一些常用的正则表达式,开发

人员能够选择相应的选项进行规则筛选,如图3-56所示。

图3-56系统提供的正则表达式

当选择了正则表达式后,系统自动生成的HTML代码如下所示。

<asp:RegularExpressionValidatorID="RegularExpressionValidator1"runat="server"

ControlToValidate="TextBoxI"ErrorMessage=''正则不匹配,请重新输入!”

ValidationExpression="\d{17}[\d|X]|\d{15}">

</asp:RegularExpressionValidator>

运行后当用户单击按钮控件时,如果输入的信息与相应的正则表达式不匹配,则会提

示错误信息,如图3-57所示。

图3-57RegularExpressionValidator验证控件

同样,开发人员也可以自定义正则表达式来规范用户的输入。使用正则表达式能够加

快验证速度并在字符串中快速匹配,而另一方面,使用正则表达式能够减少复杂的应

用程序的功能开发和实现。

注意:在用户输入为空时,其他的验证控件都会验证通过。所以,在验证控件的

使用中,通常需要同表单脸证控件(RequiredFieklValidator)一起使用。

3.5自定义逻辑验证控件(CustomValidator)

自定义逻辑验证控件(CustomValidator)允许使用自定义的验证逻辑创建验证控件。例

如,可以创建一个验证控件判断用户输入的是否包含号,示例代码如下所示。

protectedvoidCustomValidator1_ServerValidate(objectsource,

ServerValidateEventArgsargs)

{

args.lsValid=args.Value.ToString().Contains("J);〃设置验证程序,并

返回布尔值

protectedvoidButton1_Click(objectsender,EventArgse)//用户自定义验证

{

if(Page.lsValid)〃判断是否验证通

(

Labeh.Text="验证通过";//输出验证通过

else

{

Labeh.Text="输入格式错误”;〃提交失败信息

)

)

上述代码不仅使用了验证控件自身的验证,也使用了用户自定义验证,运行结果如图

3-58所示。

Q无标鹭页-YindovsInternetExplorer

▼|^g'f''/loc.三]园勿iXgveSearchP,

收藏夹卷无标题页||杭•国,二卷,页面(PA安全6),”

一□

请输入浮点型:[77884U输入格式错

输入格式错误!请重新输入!

Button|

,d

厂厂厂厂厂厂厂底五不.|保护植式:赫用©1升,/

图3-58CustomValidator验证控件

从CustomValidator验证控件的验证代码可以看出,CustomValidator验证控件可以在服

务器上执行验证检查。如果要创建服务器端的验证函数,则处理CustomValidator控件

的ServerValidate事件。使用传入的ServerValidateEventArgs的对象的IsVaiid字段来设

置是否通过验证。

而CustomValidator控件同样也可以在客户端实现,该验证函数可用VBScript或Jscript

来实现,而在CustomValidator控件中需要使用ClientValidationFunction属性指定与

CustomValidator控件相关的客户端验证脚本的函数名称进行控件中的值的验证。

3.6验证组控件(ValidationSummary)

验证组控件(ValidationSummary)能够对同一页面的多个控件进行验证。同时,验证

组控件(ValidationSummary)通过ErrorMessage属性为页面上的每个验证控件显式错

误信息、。验证组控件(ValidationSummary)的常用属性如下所示。

□DisplayMode:摘要可显示为列表,项目符号列表或单个段落。

□HeaderText:标题部分指定一个自定义标题。

□ShowMessageBox:是否在消息框中显示摘要。

□ShowSummary:控制是显示还是隐藏ValidationSummary控件。

验证控件能够显示页面的多个控件产生的错误,示例代码如下所示。

<body>

<formid="form1'*runat="server',>

<div>

姓名:

<asp:TextBoxID="TextBox1"runat="serverH></asp:TextBox>

<asp:RequiredFieldValidatorID="RequiredFieldValidator1"runat=nserver"

ControlToValidate='*TextBox1"ErrorMessage="姓名为必填项",

</asp:RequiredFieldValidator>

<br/>

身份证:

<asp:TextBoxID="TextBox2"runat="serverHx/asp:TextBox>

<asp:RegularExpressionValidatorID="RegularExpressionValidator1"runat="server"

ControlToValidate=',TextBox1"ErrorMessage="身份证号码错误”

ValidationExpression="\d{17}[\d|X]|\d{15}nx/asp:RegularExpressionValidator>

<br/>

<asp:ButtonID="Button1Hrunat='server"Text="Button"/>

<asp:ValidationSummaryID="ValidationSummary1"runat="serverH/>

</div>

</form>

</body>

运行结果如图3-59所示。

图3-59Validationsummary验证控件

当有多个错误发生时,Validationsummary控件能够捕获多个验证错误并呈现给用户,

这样就避免了一个表单需要多个验证时需要使用多个验证控件进行绑定,使用

ValidationSummary控件就无需为每个需要验证的控件进行绑定。

授课题目第4章常用的内置对象

授课类型理论课+实验课

教学方法讲授、实例驱动教学手段多媒体教学

授课时间学时分配10

通过本次课程的学习,主要掌握以下内置对象的用法:

5.1Response对象

5.2Server对象

教学目的

5.3Session对象

5.4Application对象

5.5Request对象

Respon

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论