【asp源码栏目提醒】:以下是网学会员为您推荐的asp源码-ASP NETWeb应用程序设计教程 第6章 Web页面的有效性验证 - 计算机教材,希望本篇文章对您学习有所帮助。
第6章Web页面的有效性验证6.1 验证基本知识6.2 必填验证6.3 比较验证6.4 范围验证6.5 正则表达式验证6.6 自定义验证6.7 汇总验证信息6.1 验证基本知识验证控件RequiredFieldValidator控件、CompareValidator控件、RangeValidator控件、RegularExpresionValidator控件、CustomValidator控件和ValidationSummary控件。
使用验证控件可以向
ASP.NET网页中添加输入验证。
6.1.1 服务器端验证与客户端验证服务器端验证是指用户输入的数据被提交给服务器在服务器端执行验证逻辑。
客户端验证是指用户输入的数据在客户端进行验证。
默认情况下
ASP.
NET验证控件在客户端和服务器端均执行验证关闭服务器端验证把验证控件的Enable属性设为false或者把提交按钮的CausesValidation属性设为false。
关闭客户端验证把验证控件的EnableClientScript属性设为false。
6.1.2 验证是否通过ifPage.IsValid 验证通过后要执行的代码Eles验证未通过要执行的代码 6.1.3 验证组分别验证相不干扰。
验证控件和引起回发的控件包含ValidationGroup属性若这些控件的ValidationGroup属性值相同则这些控件形成一个验证组只有该组中的那些验证控件执行验证。
6.1.4 验证控件的共有属性ControlToValidate指定输入控件的ID值。
Text指定在验证未通过时验证控件中显示的出错信息。
ErrorMessage指定在验证未通过时验证控件中显示的出错信息。
与Text区别它给出的出错信息可以显示在ValidationSummary控件中而Text属性则不能。
IsValid验证是否通过true通过验证false未通过验证。
6.1.4 验证控件的共有属性Enabled是否启用验证控件。
EnableClientScript是否启用客户端验证true启用false不启用。
Display验证控件中错误信息的显示行为枚举ValidatorDisplay 。
None 只在ValidationSummary控件中显示错误信息不在验证控件中显示错误信息。
Static不论是否显示错误信息都在页面布局中为所显示的错误信息分配空间。
Dynamic如果验证未通过则在Web页上占用空间显示错误消息如果验证通过则不会在Web页上占用任何空间。
6.2 必填验证用于用户必须输入数据而不能保持空白的场合。
语法格式 6.2 必填验证1. 改变初始值当关联输入控件中包含初始值时使用InitialValue属性则必填验证控件检测用户是否改变了这个初始值。
如果改变了这个初始值则验证通过否则验证不通过。
例6-1 添加商品6.3 比较验证用于将关联输入控件的值同常量值或其他输入控件的值相比较以确定这两个值是否与指定的关系相匹配。
语法格式 6.3 1. 与常量值作比较ValueToCompare属性使输入控件与特定的常量值作比较。
Operator属性决定如何比较。
Equal相等比较。
NotEqual不等比较。
GreaterThan大于比较。
GreaterThanEqual大于等于比较。
LessThan小于比较。
LessThanEqual小于等于比较。
DataTypeCheck检验输入控件中的值是否可以转换为Type属性所指定的数据类型。
6.3 Type属性指定比较值的数据类型String字符串数据类型。
Integer32 位有符号整数数据类型。
Double双精度浮点数数据类型。
Date日期数据类型。
Currency可以包含货币符号的十进制数据类型。
例6-2
会员等级6.3 2. 与另一个控件内的值作比较ControlToCompare属性与另一个输入控件的值作比较。
用于比较的运算符和数据类型仍然由Operator属性和Type属性确定。
例6-3 市场价与会员价6.4 范围验证用于检查输入控件的值是否在指定的范围内。
语法格式 6.4 范围验证MinimumValue属性指定验证范围的下限MaximumValue属性指定验证范围的上限Type属性指定验证的数据类型。
例6-4 折扣率6.5 正则表达式验证用于确保关联输入控件的输入值与某个正则表达式所定义的模式相匹配。
语法格式 6.5 正则表达式验证1. 什么是正则表达式正则表达式是用来描述或者匹配一系列符合某个句法规则的字符串。
例如“w.NET” 。
2. 正则表达式构成正则表达式由普通字符和元字符组成的表达式。
6.5 正则表达式验证元字符说明.匹配除换行符以外的任意字符。
例如“s.y ”匹配“say”、“sky”。
xy匹配x或y。
例如“isare”匹配“is”或“are”。
xyz匹配x、y或z中的任一字符。
例“aeiou”匹配任一个英文元音字母。
xyz匹配不包含x、y或z中的任何字符。
例“aeiou”匹配任一个辅音字母a-z匹配a-z范围内的任何字符。
例如“35-8”匹配35、36、37和38。
a-z匹配不在指定a-z范围内的任何字符。
例“35-8”匹配31、39、34。
w匹配任何字类字符包括下划线。
与A-Za-z0-9_等效。
W匹配任何非字类字符。
与A-Za-z0-9_等效。
s匹配任意的空白符包括空格、制表符、换页符等。
等价于fnrtv。
d匹配一个数字。
等价于0-9。
6.5 正则表达式验证数量词说明重复零次或多次。
等价于0。
例如“to”匹配“t”、“to”和“too”。
重复一次或多次。
等价于1。
例如“to”匹配“to”和“too”。
重复零次或一次。
等价于01。
例如“isnot”匹配“is”和“isnot”。
n重复n次。
例如“to2”匹配“too”但不能匹配“to”。
n重复n次或更多次。
例如“to1”匹配“too”、“tooo”和“to”。
nm重复n到m次。
例如“to12”匹配“too”和“to”。
6.5 正则表达式验证3. 正则表达式验证把正则表达式赋值给控件的ValidationExpression属性。
例6-5 网站安全过滤设置6.6 自定义验证完成自定义验证功能。
语法格式 6.6 自定义验证1. 服务器端验证通过响应ServerValidate事件可以为自定义验证控件编写服务器端验证逻辑。
事件响应过程的第二个参数——args它是一个有两个属性的对象Value属性关联的输入控件中需要验证的数据。
IsValid属性设置验证的返回值true表示验证通过false验证未通过。
例6-6 闰年检测6.6 自定义验证2. 客户端验证使用
JavaScript或
VBScript脚本语言编写验证逻辑然后把函数名赋值给控件的ClientValidationFunction属性。
函数的两个参数与服务端验证一样。
例6-7 客户端闰年检测6.7 汇总验证信息汇总来自页面上的一组验证控件的错误信息。
语法格式 6.7 汇总验证信息1. 错误信息显示方式DisplayMode属性。
取值为List按
列表形式显示错误信息。
BulletList按项目符号形式显示错误信息。
SingleParagraph在单个段落内显示错误信息6.7 汇总验证信息2. 格式化错误信息在验证控件的Text属性和ErrorMessage属性中可以包含
HTML标记以格式化错误信息的显示形式。
例6-8 错误汇总