5-2參與家鄉休閒活動.pptVIP

  • 3
  • 0
  • 约3.14千字
  • 约 22页
  • 2016-08-31 发布于天津
  • 举报
5-2參與家鄉休閒活動

第5章 验证控件 教学内容 验证控件的作用与验证机制 必填验证控件 范围验证控件 比较验证控件 正则验证控件 正则表达式 用户自定义验证控件 验证汇总控件 验证控件的作用与验证机制 验证控件的作用 限制用户输入,以确定用户输入的数据符合要求,确保用户输入数据为一个有效值,较大程序避免垃圾数据的产生. 可以使用客户端脚本实现数据验证。客户端脚本检查的优点:是减小网络流量、减轻服务器压力和反映迅速。客户端验证缺点:因为我们的验证规则完全定义在客户端脚本中,不怀好意的窥探者可以从这些客户端代码找出我们脚本的漏洞或者某些跳过脚本验证的方法,从而造成网站的健壮性出现问题,这就对客户端代码的客户端脚本编程能力提出了挑战。另外客户端验证可能会使我们写得非常优秀的代码在短短几天流传整个网络,不能进行版权控制。 验证控件的作用与验证机制 在服务器端检查是指将表单提交到服务器后在服务器上用服务器端代码进行验证(如用C#或者VB.NET等),服务器端验证的优点是我们的验证规则对用户来说是一个黑匣子,比较难找出我们验证代码的漏洞,并且服务器端验证的代码编写起来相对客户端脚本要容易得多,但是服务器端验证也有缺点:那就是大量的复杂验证会降低服务器的性能。 因此一般验证办法都是上面两种样式结合,利用客户端验证建立验证的第一道关卡,这个关卡将大量无意中填写的不符合要求的数据阻止在客户端,然后在服务器端建立第二道关卡,将那些利用了我们的客户端脚本漏洞的数据阻止在保存之前。 验证控件的作用与验证机制 下面以学生[注册]页面的验证为例: 验证控件的作用与验证机制 验证机制 验证控件是在服务器端进行验证的,在用户向服务器提交表单这后开始执行检查。 一般情况下,用户单击了页面中的按钮控件之后开始逐个调用验证控件检查用户的输入信息,如果检测到错误,则代码不会执行。 若按钮控件的CausesValidation属性值为false,则不启用验证控件的验证。 必填验证控件 RequiredFieldValidator控件 可以确保用户提供的输入为非空,该控件经常与其他控件一起共同实现用户的验证.常用属性如下: 必填验证控件 范围验证控件 范围验证控件 比较验证控件 比较验证控件 比较验证控件 正则验证控件 正则表达式 1、正则表达式定义规则 [ ] 表示可输入其里面的一个字符 { } 表示字符的数目,{n,}表示n个以上,{n}表示n个,省略为1。 例:[a-zA-Z]{3,6}:可输入3到6个字母 例:[0-9]{6}表示可输入6个数字 ()表示分组 | 表示或 ^ 表示不接受 例:[0-9]{4}|[ a-z]{4}:可输入4个数字或4个小字母; 例:[^0-9]{0,}可输入除数字外的任意多个任意字符; \ 表示转义符 正则表达式 2、常用匹配符号 . 匹配任意字符,.{0,}表示可输入任意多个任意字符, * 匹配前面的子表达式零次或多次。 + 匹配前面的子表达式一次或多次。 ? 匹配前面的子表达式零次或一次 \d 匹配一个数字字符,等价于[0-9] \D 匹配一个非数字字符。 \w 与单词字符匹配(包括大小写字母、数字和下划线) \W 与非单词字符匹配 正则表达式 举例: 固定电话验证: ([0-9]{3,4}-)?[0-9]{7,8} 或 (\d{3,4}-)?\d{7,8} 手机号码验证:1[358][0-9]{9} E-mail验证:.{1,}@.{1,}\.[a-zA-Z]{2,3} 自定义验证控件 验证汇总控件 Page.IsValid 属性 Page.IsValid 属性 表示页面上所有的控件是否通过验证,如通过为 true,否则为false 一般在将数据提交到数据库之前先使用此属性进行页面数据的验证. Page.IsValid 属性 作业 为[注册]页面设置各种验证控件 * * 错误信息的显示方式:Static显示在默认位置,Dynamic错误信息出现时才占用页面位置,None表示错误出现时不显示错误信息,在汇总控件显示错误信息时才用, Display 出错时的提示信息(一般使用ErrorMessage提示) Text 提交给汇总控件ValidationSummary的错误信息,如果Text属性为空,则显示该错误信息. ErrorMessage 需要进行验证的控件ID ControlToValidate 说明 属性 RangeValidator 用于范围检查,例如进行数值范围、日期等特殊格式的检查。常用属性如下: 说明 属性 提交给汇总控件ValidationSummary的错误信息,如果Text属性为空,则显示该错误信息. ErrorMessage 验证类型(字符串、整型、双精度、日期、货币5种)

文档评论(0)

1亿VIP精品文档

相关文档