ASP.NET内置的6种验证控件的使用

ASP.NET内置的6种验证控件的使用

ASP.NET控件验证

ASP.NET内置的验证控件有以下6种:

RequiredFieldValidator控件

CompareValidator控件

RangeValidator控件

RegularExpressionValidator控件

CustomValidator控件

ValidationSummary控件

1、RequiredFieldValidator控件

验证控件用来验证输入文本中的信息内容是否为空

就是在运行网站注册、登陆的时候,需要输入用户名,当你没有输入的时候,判断为空,然后返回一个message

通过设计一个会员注册时使用RequiredFieldValidator控件验证用户是否输入用户名和密码

(1) 新建一个web窗体

(2) 打开设计视图,按照上图所示设计页面

(3) Button的Text属性修改为注册,并在用户名、密码后添加RequiredFieldValidator控件

RequiredFieldValidator控件在验证控件里,平常用的Button之类的都是在标准里的

(4) 修改RequiredFieldValidator的ErrorMessage和ControlToValidate属性,让他们分别控制TextBox1和TextBox2,还有验证不合法是返回的消息分别是请输入用户名和请输入密码

现在的意思就是,当我们进行网页注册的时候,点击注册按钮,如果此时用户名和密码后面的文本框内为空,则会显示请输入用户名和请输入密码,那个文本框没有东西,那个文本框所对应的RequiredFieldValidator控件就会返回他的ErrorMessage

(5) 运行验证

2、CompareValidator控件

比较验证控件,使用该控件,可以将输入控件的值同常数值或其他输入控件的值相比较,以确定这两个值是否与比较运算符(小于、等于、大于等等)指定的关系相匹配;另外,该控件还有一个特殊功能,即数据类型检查,如输入的是否为数字、日期等。

通过使用CompareValidator控件检查两次输入的密码是否相同

(1) 修改上面的web窗体,将Email改为确认密码,并在确认密码之后添加CompareValidator控件

(2) 将CompareValidator控件的ErrorMessage设置为密码不一致,ControlToCompare是用来进行比较的控件的ID,设置为密码后的TextBox2控件,还有ControlToValidate属性设置为确认密码之后的控件TextBox3

现在是若密码和确认密码后的信息输入不一致,则确认密码后显示 输入密码不一致

(3) 运行验证

(4) CompareValidator控件还可以验证数据类型,Type属性来验证。

把用户名和密码后的验证控件都删掉,确认密码之后的CompareValidator控件,修改CompareValidator控件的Type属性为date(日期)类型(默认为string),修改ErrorMessage为不是日期类型

(5) 运行验证

(6) CompareValidator控件的Opreator属性,可以对比两个框内的数据是否相等、不相等、大于、大于等于、小于、小于等于,最重要的是还可以验证两个框内的数据类型是否匹配

3、RangeValidator控件

可以验证用户的输入是否在指定范围内。

设计一个用户注册页面,在该页面中要求用户输入出生日期。出生日期并非随便输入的,对其格式和范围要进行验证。本实例中限制出生日期的范围是1960/1/1 ~1992 /12/31,如果超过这个范围则显示提示信息。

(1) 按照上图所示设计视图,并在出生日期之后加上一个RangeValidator控件

(2) 修改RangeValidator控件的ErrorMessage属性为格式不正确,ControlToValidate属性设置为TextBox4,Type属性默认为string,把它设置为date类型,MaxiumValue和MiniumValue设置为2017-01-01和1900-01-01

(3) 运行验证

(4) RangeValidator控件修改Type还可以验证不同的数据类型

比如修改Type为Integer,最大值100,最小值1,ErrorMessage改为输入值不在范围内

运行验证

4、RegularExpressionValidator控件

验证控件用来验证输入控件的值是否与某个正则表达式所定义的模式相匹配,如身份证号码、电子邮件地址、电话号码、邮政编码等。

通过RegularExpressionValidator控件的ControlToValidate属性、Operator属性和Type属性验证用户输入的出生日期与日期类型是否匹配以及E-mail格式是否正确;另外,对于用户名的输入自定义了一个正则表达式来限制用户名只能输入字母、下画线及数字。

(1) 按照上图布局设计视图,在用户名后加上一个RegularExpressionValidator控件

(2) 将RegularExpressionValidator控件的ErrorMessage属性改为用户名只能是字母、下划线或者数字,ControlToValidate属性设置为用户名之后的TextBox1,设置ValidationExpress属性,系统提供很多正则表达式,但是这里我们是需要用户名只能是字母、下划线或者数字,系统没有,所以我们要自定义一个正则表达式^\w+$

(3) 给Email后加上RegularExpressionValidator控件,ControlToValidate属性设置为用户名之后的TextBox5,修改ErrorMessage为电子邮件格式不正确,ValidationExpress属性选择电子邮件地址,它会自动生成一个正则表达式

(4) 运行验证

5、CustomValidator控件

为输入控件提供用户定义的验证功能。(他是一个自定义的验证控件)

例如,可以创建一个验证控件,该控件检查在文本框中输入的值是否为偶数。

实现的是当用户输入的密码少于6位时,弹出对话框。

(1) 在密码文本框后面添加一个CustomValidator控件

(2) 修改ErrorMessage属性为密码不能少于6位,ControlToValidate设置为TextBox2

(3) 切换到源视图下,在代码页面的顶部写一个自定义的脚本函数

(4) 把自定义脚本中的myValidate复制到设计视图CustomValidator1中有一个ClientValidationFunction属性中,设置为这个函数的名称,然后EnableClientScript属性(表示启用客户端验证)设置为true(默认就是true)

(5) 运行验证

6、ValidationSummary控件

错误汇总控件,主要用于收集本页中所有验证控件的错误信息,将它们组织好并一起显示出来,错误列表可以通过列表、项目符号列表或单个段落的形式进行显示。

使用ValidationSummary集中所有的报错信息,并弹出提示框

(1) 在设计视图下添加一个ValidationSummary控件,汇总错误信息

(2) 设置ShowMessageBox属性设置为true(用弹窗方式)

(3) 运行验证

风雨相关

朝鲜人民民主共和国人口时钟
365体育娱乐手机平台

朝鲜人民民主共和国人口时钟

🌀 08-14 💧 阅读 376