Asp.net 验证控件简述

1. RequiredFieldValidator控件
--用来验证InitialValue属性和控件的值是否一致,如果一致则验证失败
通常InitialValue属性初始值为"",如果一般验证控件是否为空值,同时也可以验证控件当前值是否为指定值
通常用于验证TextBox和DropDownList控件

2. RangeValidator控件  
--用来验证控件的值是否在指定的范围,类型可以是string,int,double,date,curreny
如果控件的值不在指定范围或值不属于验证的类型(比如要验证int类型却输入了字符串)都会验证失败
但空值可以通过验证,要验证空值可用RequiredFieldValidator控件

3. CompareValidator控件
--主要用于比较验证,Operator属性用于指定执行那种比较,类型如下:
DataTypeCheck,Equal, GreaterThan, GreaterThanEqual, LessThan, LessThanEqual, and NotEqual
3.1  和某个数据类型进行比较,判断控件的值是否属于某个类型 
Type属性:string,int,double,date,curreny
3.2  和某个常量进行比较   ValueToCompare属性
3.3  和另一个控件的值进行比较  ControlToCompare属性
3.4  控件值为空值时验证通过,要验证空值可用RequiredFieldValidator控件

4. RegularExpressionValidator控件
--主要用来验证正则表达式
4.1 ValidationExpression属性用来指定要比较的正则表达式,比如:
ValidationExpression="\w+([-+.’]\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"就是验证 Email地址
4.2 ValidationExpression属性包含一些内置的正则表达式
4.3 控件值为空值时验证通过,要验证空值可用RequiredFieldValidator控件

5. CustomValidator 控件
--主要用于通过服务器或浏览器端函数来进行验证
5.1  ValidateEmptyText属性,当该属性设为true时,会验证控件值是否为空的情况
5.2 改控件不一定要关联一个现有控件,ControlToValidate可用可不用
5.3 通过浏览器端Javascript函数进行验证
使用:ClientValidationFunction=”valComments_ClientValidate” 属性
js函数
<script type=”text/javascript”>
//source: 表示CustomValidator 控件对象;  args: 表示控件参数 ; 
IsValid: 验证成功为true,否则为false;Value:   关联控件的值
function valComments_ClientValidate(source, args) 
{
if (args.Value.length > 10)  
args.IsValid = false;
else
args.IsValid = true;
}
</script>

5.3 通过服务器函数进行验证
1. 服务器函数
OnServerValidate=valComments_ServerValidate”   //使用
//参数功能同js函数
void valComments_ServerValidate(Object source, ServerValidateEventArgs args)
{
if (args.Value.Length > 10)
args.IsValid = false;
else
args.IsValid = true;
}

6. ValidationSummary控件
--主要用于将所有的错误信息列出来
6.1  DisplayMode属性:可以以 BulletList, List, and SingleParagraph几种格式显示
6.2  HeaderText属性: 显示控件头文字
6.3 ShowMessageBox属性:是否以提示框形式显示错误信息,如果该属性为true,一般把
ShowSummary属性设置为FALSE, 并把其它验证控件的display属性设置为no
6.4 ShowSummary属性:是否显示错误信息


验证控件Text属性和Error Message属性的区别:
1. Text属性主要用于在验证控件内显示 错误信息
2. Error Message属性主要用于在ValidationSummary控件内显示属性
原文地址:https://www.cnblogs.com/gossip/p/1712061.html