39-在编辑和插入界面里添加验证控件讲解.docxVIP

39-在编辑和插入界面里添加验证控件讲解.docx

  1. 1、本文档共10页,可阅读全部内容。
  2. 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
  3. 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  4. 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
  5. 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
  6. 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们
  7. 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
  8. 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
到目前为止的讨论编辑DataList的教程里,没有包含任何验证用户的输入,即使是用户非法输入— 遗漏了product的name或者负的price— 会导致异常。在前面一章里我们学习了如何在DataList的UpdateCommand事件处理中添加异常处理代码,以便在出现异常时捕捉它并显示友好的错误信息。然而理想的编辑界面应该包含验证控件,用来在第一时间里阻止用户输入一些非法数据。本章我们将学习在DataList的EditItemTemplate里添加验证控件从而提供一个更安全的编辑界面,这非常容易。本章将使用前面创建的例子,并扩展编辑界面用来添加合适的验证控件。第一步: 从处理 BLL和 DAL的异常复制例子在处理BLL和DAL的异常里我们创建了一个以两列的方式列出product的name和price的DataList。本章的目标是扩展这个DataList的编辑界面,让它包含验证控件。我们的验证逻辑如下:product的 name 是必填的确保输入的price的值是合法的货币类型格式确保输入的price的值大于等于0 我们首先需要将ErrorHandling.aspx页的例子复制到UIValidation.aspx里。这其中包括页面的声明代码和后台代码。下面是复制声明代码的步骤:在? Visual Studio的打开 ErrorHandling.aspx 切换到源视图复制从 asp:Content 到/asp:Content 标签内的代码,见图1. 图 1: 复制asp:Content 内的代码打开UIValidation.aspx 切换到源视图?,粘贴代码. 完成上面的步骤后,打开ErrorHandling.asxp.cs,复制DispalyExcetionDetails方法和三个事件处理(Products_EditCommand,Products_CancelCommand, 和Products_UpdateCommand),注意不要复制声明类和using的代码。将这些代码粘贴到ErrorHandling.asxp.cs里的EditDeleteDataList_UIValidation 类里。完成这些后,浏览一下页面。这两个页面无论是输出还是功能都是一样的(见图2)。图 2: UIValidation.aspx 页ErrorHandling.aspx一样第二步: 为DataList的 EditItemTemplate添加验证控件当创建输入表格时,很重要的一点是声明必填字段和用户的输入必须是格式正确的合法值。为了确保用户输入是合法的,ASP.NET提供了5个内置的验证控件,这些验证控件被设计用来验证单个的输入控件里的输入值。RequiredFieldValidator —确保必填值CompareValidator — 根据另外的控件的值或常量来验证某个值,或者确保输入值是特定的类型RangeValidator — 确保输入值在某个范围内RegularExpressionValidator — 根据正则表达式( regular expression )来验证某个值CustomValidator — 根据用户自定义的方法来验证某个值?更多的关于这5个控件的信息请参考给编辑和新增界面增加验证控件? 或着ASP.NET Quickstart Tutorials里的Validation Controls section。本章里我们需要使用RequiredFieldValidator 来确保用户输入了product的name,CompareValidator 来确保price的值大于等于0并且是合法的货币格式。注意:在ASP.NET 1.x里已经包含了这些验证控件了,在ASP.NET 2.0里对它们有很多改进。其中最重要的两点一是对除了IE之外的浏览器的客户端脚本支持,二是同一页面上的验证控件分组。更多的2.0里验证控件新特性的信息请参考Dissecting the Validation Controls in ASP.NET 2.0.现在我们来将需要的验证控件添加到DataList的EditItemTemplate里。这个可以通过点击DataList智能标签上的Edit Template,或者直接写声明代码来完成。我们这里使用第一种方法。选择Edit Template后拖一个RequiredFieldValidator 进来,将它放在ProductName TextBox后面。图 3: 添加 RequiredFieldValidator所有的验证控件都只验证单个的Web控件。因此我们需要指明刚添加的RequiredFieldValidator 是用来验证ProductName TextBox。这个关联是通过将验证控件的ControlT

文档评论(0)

shuwkb + 关注
实名认证
文档贡献者

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

1亿VIP精品文档

相关文档