1. RequiredFieldValidator 控件可确保用户提供有效的输入,即非空验证
属性 说明
ControlToValidate 要验证控件的ID,所有验证控件都有该属性
Text 出错时的提示
ErrorMessage 提交给汇总控件的错误信息
2. CompareVzlidator 该控件不仅可以判断一个控件中的值是否和另一控件的值相等,还可以比较大小
属性 说明
ControlValidate 要验证控件的ID
ControlToCompare 用来与要验证的控件进行比较的控件的ID
Type 设置比较类型,不同类型的比较可能会出错
Operator 设置比较运算符,比如大于等于,小于等于。默认设置为Equal
ValueToCompare 用于比较的值
CompareVzlidator可用于检查输入类型,比如用户生日必须是日期,就可以使用CompareVzlidator控件进行验证。不过,此时需要移除ValueToCompare和ControlToCompare的值,并设置Type类型为Date,设置Operator值为DateTypeCheck即可.
3. RangeValidator 控件用于范围检查,比如网上预定卡拉OK的房价,一般只提供一周内的时间
属性 说明
ControlToValidate 要验证的控件的ID
MaximumValue 范围的上界(最大值)
MinimumValue 范围的下界(最小值)
Type 验证类型,不同类型之间的比较可能会引发问题
4. RegularExpressionValidator 是正则表达式的意思,正则表达式就是用某种模式去匹配一类字符串的一个特殊公式
ASP.NET中内置了几个常用的正则表达式,我们只需要选择控件的RegularExpression属性,就可以打开正则表达式编辑器,选择使用。
常见的正则表达式如下:
非负整数(正整数+0):^\d+$
正整数:^[0-9]*[1-9][0-9]*$
匹配中文字符的正则表达式:[\u4e00-\u9fa5]
匹配双字节字符(包括汉字在内):[^\x00-\xff]
货币(非负数),要求小数点后有两为数字:\d+(\.\d\d)?
货币(正数或负数):(-)?\d+(\.\d\d)?
5. CustomValidator 有时候验证比较特殊,这时需要自己编写验证代码。CustomValidator就用于自定义验证。CustomValidator支持客户端脚本验证和服务器验证两种方式
属性 说明
ControlToValidate 要验证控件的ID
ClientValidationFunction 用于设置客户端验证的脚本函数
OnServerValidate 服务器端验证的事件方法
6. ValidationSummary 用于汇总所有的错误报告。如果不使用他,所有的验证错误(ErrorMessage )将直接在验证控件的位置显示,有时不好控制样式
属性 说明
ShowMessageBox 指示是否显示弹出的提示消息
ShowSummary 指示是否显示该报告内容,用于显示提示消息的时候
经验
有时候你发现ValidationSummary显示错误的时候,在验证控件的位置还是显示出了错误报告。这时你可以设置验证控件的Text属性为“*”,那样就会在错误提示的时候,使验证控件的位置仅显示一个红色的“*”
还有一种方式,就是不设置Text属性,而是在验证控件的标签中写“*”,比如:
<asp:RequiredFieldValidator ID="rfvUserName" runat="server" ErrorMessage="请输入用户名" ControlToValidate="txtLoginId">*</asp:RequiredFieldValidator>
效果是一样的。