asp验证控件

上传人:正** 文档编号:41194761 上传时间:2018-05-28 格式:DOC 页数:7 大小:287.50KB
返回 下载 相关 举报
asp验证控件_第1页
第1页 / 共7页
asp验证控件_第2页
第2页 / 共7页
asp验证控件_第3页
第3页 / 共7页
asp验证控件_第4页
第4页 / 共7页
asp验证控件_第5页
第5页 / 共7页
点击查看更多>>
资源描述

《asp验证控件》由会员分享,可在线阅读,更多相关《asp验证控件(7页珍藏版)》请在金锄头文库上搜索。

1、1第第 4 章章 补充内容补充内容4.4 验证控件验证控件 ASP.NET 提供了强大的验证控件,它可以验证服务器控件中用户的输入,并在验证失 败的情况下显示一条自定义错误消息。验证控件直接在客户端执行,用户提交后执行相应 的验证无需使用服务器端进行验证操作,从而减少了服务器与客户端之间的往返过程。 4.4.1 表单验证控件表单验证控件 (RequiredFieldValidator) 在实际的应用中,如在用户填写表单时,有一些项目是必填项,例如用户名和密码。 在传统的 ASP 中,当用户填写表单后,页面需要被发送到服务器并判断表单中的某项 HTML 控件的值是否为空,如果为空,则返回错误信息

2、。在 ASP.NET 中,系统提供了 RequiredFieldValidator 验证控件进行验证。使用 RequiredFieldValidator 控件能够指定某个 用户在特定的控件中必须提供相应的信息,如果不填写相应的信息,RequiredFieldValidator 控件就会提示错误信息,RequiredFieldValidator 控件示例代码如下所示。 姓名: 密码: 在进行验证时,RequiredFieldValidator 控件必须绑定一个服务器控件,在上述代码中, 验证控件 RequiredFieldValidator 控件的服务器控件绑定为 TextBox1,当 Text

3、Box1 中的 值为空时,则会提示自定义错误信息“必填字段不能为空” ,如图 5-53 所示。2图 5-53 RequiredFieldValidator 验证控件 当姓名选项未填写时,会提示必填字段不能为空,并且该验证在客户端执行。当发生 此错误时,用户会立即看到该错误提示而不会立即进行页面提交,当用户填写完成并再次 单击按钮控件时,页面才会向服务器提交。 4.4.2 比较验证控件比较验证控件 (CompareValidator) 比较验证控件对照特定的数据类型来验证用户的输入。因为当用户输入用户信息时, 难免会输入错误信息,如当需要了解用户的生日时,用户很可能输入了其他的字符串。 Comp

4、areValidator 比较验证控件能够比较控件中的值是否符合开发人员的需要。 CompareValidator 控件的特有属性如下所示: ControlToCompare:以字符串形式输入的表达式。要与另一控件的值进行比较。 Operator:要使用的比较。 Type:要比较两个值的数据类型。 ValueToCompare:以字符串形式输入的表达式。 当使用 CompareValidator 控件时,可以方便的判断用户是否正确输入,示例代码如下 所示。 请输入生日: 毕业日期: 3上述代码判断 TextBox1 的输入的格式是否正确,当输入的格式错误时,会提示错误, 如图 5-54 所示。

5、图 5-54 CompareValidator 验证控件 CompareValidator 验证控件不仅能够验证输入的格式是否正确,还可以验证两个控件 之间的值是否相等。如果两个控件之间的值不相等,CompareValidator 验证控件同样会将 自定义错误信息呈现在用户的客户端浏览器中。 4.4.3 范围验证控件范围验证控件 (RangeValidator) 范围验证控件(RangeValidator )可以检查用户的输入是否在指定的上限与下限之间。 通常情况下用于检查数字、日期、货币等。范围验证控件(RangeValidator)控件的常用属 性如下所示。 MinimumValue:指定

6、有效范围的最小值。 MaximumValue:指定有效范围的最大值。 Type:指定要比较的值的数据类型。 通常情况下,为了控制用户输入的范围,可以使用该控件。当输入用户的生日时,今 年是 2008 年,那么用户就不应该输入 2009 年,同样基本上没有人的寿命会超过 100,所 以对输入的日期的下限也需要进行规定,示例代码如下所示。 请输入生日: 上述代码将 MinimumValue 属性值设置为 1990/1/1,并能将 MaximumValue 的值设 置为 2009/1/1,当用户的日期低于最小值或高于最高值时,则提示错误,如图 5-55 所示。4图 5-55 RangeValidat

7、or 验证控件 注意:RangeValidator 验证控件在进行控件的值的范围的设定时,其范围不仅仅可 以是一个整数值,同样还能够是时间、日期等值。 4.4.4 正则验证控件正则验证控件 (RegularExpressionValidator) 在上述控件中,虽然能够实现一些验证,但是验证的能力是有限的,例如在验证的过 程中,只能验证是否是数字,或者是否是日期。也可能在验证时,只能验证一定范围内的 数值,虽然这些控件提供了一些验证功能,但却限制了开发人员进行自定义验证和错误信 息的开发。为实现一个验证,很可能需要多个控件同时搭配使用。 正则验证控件(RegularExpressionVali

8、dator)就解决了这个问题,正则验证控件的功能 非常的强大,它用于确定输入的控件的值是否与某个正则表达式所定义的模式相匹配,如 电子邮件、电话号码以及序列号等。 正则验证控件(RegularExpressionValidator)常用的属性是 ValidationExpression,它用 来指定用于验证的输入控件的正则表达式。客户端的正则表达式验证语法和服务端的正则 表达式验证语法不同,因为在客户端使用的是 JSript 正则表达式语法,而在服务器端使用 的是 Regex 类提供的正则表达式语法。使用正则表达式能够实现强大字符串的匹配并验证 用户的输入的格式是否正确,系统提供了一些常用的正

9、则表达式,开发人员能够选择相应 的选项进行规则筛选,如图 5-56 所示。 图 5-56 系统提供的正则表达式 5当选择了正则表达式后,系统自动生成的 HTML 代码如下所示。 运行后当用户单击按钮控件时,如果输入的信息与相应的正则表达式不匹配,则会提 示错误信息,如图 5-57 所示。 图 5-57 RegularExpressionValidator 验证控件 同样,开发人员也可以自定义正则表达式来规范用户的输入。使用正则表达式能够加 快验证速度并在字符串中快速匹配,而另一方面,使用正则表达式能够减少复杂的应用程 序的功能开发和实现。 注意:在用户输入为空时,其他的验证控件都会验证通过。所

10、以,在验证控件的使 用中,通常需要同表单验证控件(RequiredFieldValidator )一起使用。 4.4.5 自定义逻辑验证控件自定义逻辑验证控件 (CustomValidator) 自定义逻辑验证控件(CustomValidator )允许使用自定义的验证逻辑创建验证控件。 例如,可以创建一个验证控件判断用户输入的是否包含“.”号,示例代码如下所示。 protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args) args.IsValid = args.Valu

11、e.ToString().Contains(“.“);/设置验证程序,并返回布尔值 protected void Button1_Click(object sender, EventArgs e) /用户自定义验证 if (Page.IsValid) /判断是否验证通过 Label1.Text = “验证通过“; /输出验证通过 else Label1.Text = “输入格式错误“; /提交失败信息 上述代码不仅使用了验证控件自身的验证,也使用了用户自定义验证,运行结果如图65-58 所示。图 5-58 CustomValidator 验证控件 从 CustomValidator 验证控件的

12、验证代码可以看出,CustomValidator 验证控件可以在 服务器上执行验证检查。如果要创建服务器端的验证函数,则处理 CustomValidator 控件 的 ServerValidate 事件。使用传入的 ServerValidateEventArgs 的对象的 IsValid 字段来设置 是否通过验证。 而 CustomValidator 控件同样也可以在客户端实现,该验证函数可用 VBScript 或 Jscript 来实现,而在 CustomValidator 控件中需要使用 ClientValidationFunction 属性指定 与 CustomValidator 控件相

13、关的客户端验证脚本的函数名称进行控件中的值的验证。 4.4.6 验证组控件验证组控件 (ValidationSummary) 验证组控件 (ValidationSummary )能够对同一页面的多个控件进行验证。同时,验 证组控件 (ValidationSummary )通过 ErrorMessage 属性为页面上的每个验证控件显式错 误信息。验证组控件 (ValidationSummary )的常用属性如下所示。 DisplayMode:摘要可显示为列表,项目符号列表或单个段落。 HeaderText:标题部分指定一个自定义标题。 ShowMessageBox:是否在消息框中显示摘要。 ShowSummary:控制是显示还是隐藏 ValidationSummary 控件。 验证控件能够显示页面的多个控件产生的错误,示例代码如下所示。 姓名: 身份证: 7运行结果如图 5-59 所示。 图 5-59 ValidationSummary 验证控件 当有多个错误发生时,ValidationSummary 控件能够捕获多个验证错误并呈现给用 户,这样就避免了一个表单需要多个验证时需要使用多个验证控件进行绑定,使用 ValidationSummary 控件就无需为每个需要验证的控件进行绑定。

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 办公文档 > 其它办公文档

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号