ASP.NET 2.0服务器控件之实现验证控件1
点击次数:31 次 发布日期:2008-11-26 12:18:45 作者:源代码网
|
源代码网推荐 源代码网推荐 1. 内置验证控件概述 源代码网推荐 源代码网推荐 验证控件完成对输入数据进行验证的功能。通过将验证控件和输入控件关联,开发人员可以向Web页面添加输入验证功能。另外,还提供了自定义验证规则的方法和自定义错误信息的内容和显示方式等。本节将概括性介绍ASP.NET内置验证控件。 源代码网推荐 源代码网推荐 ASP.NET 2.0共包含5个内置验证控件:RequiredFieldValidator、CompareValidator、RangeValidator、RegularExpressionValidator和CustomValidator,这些控件直接或者间接派生自System.Web.UI.WebControls.BaseValidator。每个验证控件执行特定类型的验证,并且当验证失败时显示自定义消息。下面简要介绍了这5个验证控件。 源代码网推荐 源代码网推荐 (1)RequiredFieldValidator控件 源代码网推荐 源代码网推荐 该控件用于确保被验证的控件中包含一个值。 源代码网推荐 源代码网推荐 (2)CompareValidator控件 源代码网推荐 源代码网推荐 该控件使用比较运算符(小于、等于、大于等)将用户输入与一个常量值或另一控件的属性值进行比较。 源代码网推荐 源代码网推荐 (3)RangeValidator控件 源代码网推荐 源代码网推荐 该控件用于检查用户的输入是否在指定的上下限内。可以检查数字对、字母字符对和日期对的范围。 源代码网推荐 源代码网推荐 (4)RegularExpressionValidator控件 源代码网推荐 源代码网推荐 该控件用于检查项与正则表达式定义的模式是否匹配。这种验证类型允许检查可预知的字符序列,如身份证号码、电子邮件地址、电话号码、邮政编码等中的字符序列。 源代码网推荐 源代码网推荐 (5)CustomValidator控件 源代码网推荐 源代码网推荐 该控件用于使用您自己编写的验证逻辑检查用户输入。这种验证类型允许检查在运行时导出的值。 源代码网推荐 源代码网推荐 除以上内置验证控件外,ASP.NET 2.0还提供了一个用于显示错误信息概要的控件ValidationSummary。该控件的目的是将来自页上所有验证控件的错误信息,一起显示在一个位置,例如,一个消息框或者一个错误信息列表。ValidationSummary控件不执行验证,但是它可以和所有验证控件一起使用,更准确的说,ValidationSummary可以和上述5个内置验证控件以及自定义验证控件,共同完成验证功能。 源代码网推荐 源代码网推荐 在Web页面中使用验证控件,我们需要注意以下几个关键的方面。 源代码网推荐 源代码网推荐 首先,将验证控件与输入控件关联起来,然后,根据不同类型验证控件的特征定义相关属性。例如:所有验证控件都要通过ContrlToValidate属性进行关联设置,都必须通过ErrorMessage属性定义错误信息内容;对于范围检查控件RangeValidator来讲,必须定义MaximumValue和MinimumValue属性来指定有效范围的最小值和最大值;对于模式匹配控件RegularExpressionValidator来讲,必须使用ValidationExpression属性指定用于验证输入控件的正则表达式。以上介绍的使用方式,很可能使得一个输入控件关联多个验证控件,这在ASP.NET 2.0中是允许的。 源代码网推荐 源代码网推荐 其次,ASP.NET 2.0中为验证控件提供了一个新属性ValidationGroup。开发人员可使用使用该属性将单个控件与验证组相关联,然后,使用多个ValidationSummary控件收集和报告这些组的错误。如果未指定验证组,则验证功能等效于ASP.NET 1.x中的验证功能。如果在多个控件中指定了多个验证组,则一定会显示多个验证摘要控件,因为一个验证摘要只显示一个组的验证错误。回发到服务器且当前具有CausesValidation属性的控件也引入了此ValidationGroup属性,该属性确定当控件导致回发时应当验证的控件组。如果未指定验证组,则会验证默认组,默认组由所有没有显式分配组的验证程序组成。 源代码网推荐 源代码网推荐 最后,一旦在Web页面中正确包含验证控件,那么开发人员就可以使用自己的代码来测试页或者单个验证控件的状态。例如,在使用输入数据之前来测试验证控件的IsValid属性。如果为true,表示输入数据有效;如果为false,表示输入错误,并显示错误信息。对于Web页面来讲,只有当所有验证控件的IsValid都为true,即所有输入数据都符合验证条件时,Page类的IsValid属性才设置为true,否则为false。另外,在页面级验证中,ASP.NET 2.0还提供了两个新方法来支持验证功能。一个是来自Page类的GetValidators方法,该方法将检索属于指定验证组的验证程序。还有一个也是来自Page类的Validate方法的重载,其允许采用验证组作为参数。 源代码网推荐 源代码网推荐 源代码网推荐 源代码网推荐 做人要厚道,请注明转自酷网动力(www.ASPCOOL.COM)。 源代码网推荐 源代码网供稿. |
