第05篇服务器控件.ppt

  1. 1、本文档共76页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
下面的代码演示将用户输入与另一控件的值进行比较的 CompareValidator。这里模拟了酒店预定的情况,用户输入的离开日期必须晚于到达日期: 16.txt 范围检查 可以采用RangeValidator控件检查用户的输入是否在指定的上下限内。RangeValidator 控件使用四个关键属性执行验证,ControlToValidate 属性包含要验证的输入控件,MinimumValue和 MaximumValue 属性指定有效范围的最大值和最小值,BaseCompareValidator.Type 属性用于指定要比较的值的数据类型,可以指定为String、Integer、Double、Date或Currency 等。需要注意的是,如果控件的输入为空,则会验证成功,所以需要结合RequiredFieldValidator 控件联合进行验证。 下面的示例说明如何在网页上创建RequiredFieldValidator控件,以检查输入的值是否在预先设定的范围内:17.txt 模式匹配 可以通过RegularExpressionValidator验证相关输入控件的值是否匹配正则表达式指定的模式。在VS2005的集成开发环境中,通过点击RegularExpressionValidator控件的ValidationExpression属性,可以查看VS2005帮我们预先设定的正则表达式,如图5.10所示。 下面的示例演示了如何使用 RegularExpressionValidator 控件验证用户是否输入一个有效的邮编(6位数字)。18.txt 运行结果如图5.11所示。 自定义验证 如果现有的 ASP.NET 验证控件无法满足需求,可以定义一个自定义的服务器端验证函数,然后使用 CustomValidator 控件来调用它。还可以通过编写 JavaScript函数,重复服务器端方法的逻辑,从而添加客户端验证,在提交页面之前检查用户输入内容。即使使用了客户端检查,也应该执行服务器端的验证,服务器端的验证有助于防止用户通过禁用或更改客户端脚本来避开验证。 使用自定义函数在服务器端进行验证的步骤如下: 1)将一个CustomValidator控件添加到页面中并设置其ControlToValidate ,ErrorMessage等属性; 2)通过设置CustomValidator控件的OnServerValidate事件来实现自定义验证,例如以下代码检测用户的输入是否为 8 个字符或更长: protected void TextValidate(object source, ServerValidateEventArgs args) { args.IsValid = (args.Value.Length = 8); } source 参数是对引发此事件的自定义验证控件的引用。属性 args.Value 将包含要验证的用户输入内容,如果值是有效的,则将 args.IsValid 设置为 true;否则设置为 false。 3) 页面代码如下,其中的OnServerValidate事件可以利用VS2005的属性对话框来指定,如图5.12所示。 asp:textbox id=TextBox1 runat=server/asp:textbox asp:CustomValidator id=CustomValidator1 runat=server OnServerValidate=TextValidate ControlToValidate=TextBox1 ErrorMessage=字符输入不能小于8个! /asp:CustomValidator 图5.12 设置OnServerValidate事件 也可以通过CustomValidator的ClientValidationFunction属性来进行客户端验证,代码如下: script language=JavaScript function validateLength(oSrc, args){ args.IsValid = (args.Value.length = 8); } /script asp:Textbox id=text1 runat=server text=/asp:Textbox asp:CustomValidator id=CustomValidator2 runat=server ControlToValidate = text1 ErrorMessage = 字符输入不能小于8个! ClientValidationFunction=validateLeng

文档评论(0)

kehan123 + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档