`

ASP.NET验证控件详解

 
阅读更多
<iframe align="top" marginwidth="0" marginheight="0" src="http://www.zealware.com/46860.html" frameborder="0" width="468" scrolling="no" height="60"></iframe>
ASP.NET是微软推出的下一代WEB开发工具,其强大的功能立即吸引了一大批WEB开发者投入它的靡下。现在,我们来看看ASP.NET的验证控件,感受ASP.NET的强大功能同时方便我们现在的WEB开发。

  WEB开发者特别是ASP开发者,一直对数据验证比较恼火,当你好不容易写出数据提交程序的主体以后,还不得不花大把时间去验证用户的每一个输入是否合法。如果开发者熟悉JavaScript或者VBScript,可以用这些脚本语言轻松实现验证,但是又要考虑用户浏览器是否支持这些脚本语言;如果对这些不是很熟悉或者想支持所有用户浏览器,就必须在ASP程序里面验证,但是这样验证就会增加服务器负担。现在,有了ASP.NET,你不但可以轻松的实现对用户输入的验证,而且,还可以选择验证在服务器端进行还是在客户端进行,再也不必考虑那么多了,程序员们可以将重要精力放在主程序的设计上了。

  ASP.NET公有六种验证控件,分别如下:

控件名 功能描叙
RequiredFieldValidator(必须字段验证) 用于检查是否有输入值
CompareValidator(比较验证) 按设定比较两个输入
RangeValidator(范围验证) 输入是否在指定范围
RegularExpressionValidator(正则表达式验证) 正则表达式验证控件
CustomValidator(自定义验证) 自定义验证控件
ValidationSummary(验证总结) 总结验证结果

  下面,我们来看这些控件的使用

  一:RequiredFieldValidator(必须字段验证)的使用

  RequiredFieldValidator控件使用的标准代码如下:

<ASP:RequiredFieldValidator id="Validator_Name" Runat="Server"
   ControlToValidate="要检查的控件名"
   ErrorMessage="出错信息"
   Display="Static|Dymatic|None"
 >
 占位符
</ASP: RequiredFieldValidator >


  在以上标准代码中:

  ControlToValidate:表示要进行检查控件ID;

  ErrorMessage:表示当检查不合法时,出现的错误信息;

  Display :错误信息的显示方式;Static表示控件的错误信息在页面中占有肯定位置;Dymatic表示控件错误信息出现时才占用页面控件;None表示错误出现时不显示,但是可以在ValidatorSummary中显示;

  占位符:表示Display为Static时,错误信息占有"占位符"那么大的页面空间;

  现在,让我们看一个实例:

<ASP:TextBox id="txtName" RunAt="Server"/>
<ASP:RequiredFieldValidator id="Validator1" Runat="Server"
   ControlToValidate="txtName"
   ErrorMessage="姓名必须输入"
   Display="Static">
  *姓名必须输入
</ASP:RequiredFieldValidator>

在以上例子中,检查txtName控件是否有输入,如果没有,显示错误信息"姓名必须输入"。是不是很简单?
注意:以上代码和下面其他控件的代码最好放入Form中,和ASP中不一样的是,Form最好写为这样:

<Form RunAt="Server">
其他代码
</Form>

  这样,Form在服务器端执行,提交才会有效;
 二:CompareValidator(比较验证)控件

  比较控件比较两个控件的输入是否符合程序设定,大家不要把比较仅仅理解为"相等",尽管相等是用的最多的,其实,这里的比较包括范围很广,大家看标准代码就会明白。

  比较控件的标准代码如下:

<ASP:CompareValidator id="Validator_ID" RunAt="Server"
ControlToValidate="要验证的控件ID"
errorMessage="错误信息"
ControlToCompare="要比较的控件ID"
type="String|Integer|Double|DateTime|Currency"
operator="Equal|NotEqual|GreaterThan|GreaterTanEqual|LessThan|LessThanEqual|DataTypeCheck"
Display="Static|Dymatic|None"

占位符
</ASP:CompareValidator>

  在以上标准代码中:

  Type表示要比较的控件的数据类型;

  Operator表示比较操作(也就是刚才说的为什么比较不仅仅是"相等"的原因),这里,比较有7种方式;

  其他属性和RequiredFieldValidator相同;

  在这里,要注意ControlToValidate和ControlToCompare的区别,如果operate为GreateThan,那么,必须ControlToCompare大于ControlToValidate才是合法的,这下,应该明白它们两者的意义了吧?例子程序请参考RequiredFieldValidator控件,对照标准代码自己设计。
三:RangeValidator(范围验证)控件

  验证输入是否在一定范围,范围用MaximumValue(最大)和MinimunVlaue来确定,标准代码如下:

<ASP:RangeValidator id="Vaidator_ID" Runat="Server"
controlToValidate="要验证的控件ID"
type="Integer"
MinimumValue="最小值"
MaximumValue="最大值"
errorMessage="错误信息"
Display="Static|Dymatic|None"

占位符
</ASP:RangeValidator>

在以上代码中:

    用MinimumValue和MaximumValue来界定控件输入值得范围,用type来定义控件输入值的类型。

  四:RegularExpresionValidator(正则表达式)控件

  正则表达式验证控件的功能非常强大,你可以自己容易构造验证方式,我们先来看看标准代码:

<ASP:RegularExpressionValidator id="Validator_ID" RunAt="Server"
ControlToValidate="要验证控件名"
ValidationExpression="正则表达式"
errorMessage="错误信息"
display="Static"

占位符
</ASP:RegularExpressionValidator>

  在以上标准代码中,ValidationExpression是重点,现在来看看它的构造:

  在ValidationExpression中,不同的字符表示不同的含义:

  "."表示任意字符;

  "*"表示和其他表达式一起,表示容易组合;

  "[A-Z]"表示任意大写字母;

  "/d"表示容易一个数字;

  注意,在以上表达式中,引号不包括在内;

  举例:

   正则表达式:".*[A-Z]"表示数字开头的任意字符组合其后接一个大写字母。

  五:ValidationSummary(验证总结)控件

  该控件收集本页的所有验证错误信息,并可以将它们组织以后再显示出来。其标准代码如下:

<ASP:ValidationSummary id="Validator_ID" RunAT="Server"
HeaderText="头信息"
ShowSummary="True|False"
DiaplayMode="List|BulletList|SingleParagraph"

</ASP: ValidationSummary >

  在以上标准代码中,HeadText相当于表的HeadText,DisplayMode表示错误信息显示方式:List相当于HTML中的<BR>;BulletList相当于HTML中的<LI>;SingleParegraph表示错误信息之间不作如何分割;

  六:CustomValidator(自定义验证)控件

  该控件用自定义的函数界定验证方式,其标准代码如下:

<ASP:CustomValidator id="Validator_ID" RunAt="Server"
controlToValidate="要验证的控件"
onServerValidateFunction="验证函数"
errorMessage="错误信息"
Display="Static|Dymatic|None"

占位符
</ASP: CustomValidator >

  以上代码中,用户必须定义一个函数来验证输入。

  七:总结

  ASP.NET验证控件已经介绍完了,大家可以发现它们的功能很强大,再也不要为验证而烦恼了。当然,以上介绍并不是特别详细,细微的地方,还请大家自己阅读微软的SDK。


Trackback: http://tb.blog.csdn.net/TrackBack.aspx?PostId=1659304


分享到:
评论

相关推荐

    wxh 《ASP.NET验证控件详解

    ASP.NET验证控件详解

    asp.net验证控件详解

    asp.net六大验证控件详解 每个页面是一个控件的详解。 一看就懂

    ASP.NET的验证控件使用详解

    ASP.NET是微软推出的下一代WEB开发工具,其强大的功能立即吸引了一大批WEB开发者投入它的靡下。现在,我们来看看ASP.NET的验证控件,感受ASP.NET的强大功能同时方便我们现在的WEB开发。

    ASP.NET3.5控件详解

    VS2008中实际项目中用到的各种控件,包括ASP.NET3.5的大部分控件的使用方法和技巧,各种控件属性以及各种控件方法应用大全。 包括各种基本控件,各种验证控件,各种列表控件,SqlDataSource控件,ObjectDataSource...

    asp.net验证控件气泡提示控件及Demo源码

    本程序能改善asp.net的验证控件的显示效果,用比较人性化的气泡提示来替换掉原来枯燥的界面提示,并带有"关闭提示"的功能,有效的解决了一个输入框带多个验证控件时,显示错误提示信息不在同一个地方的缺陷,也有效...

    庖丁解牛:纵向切入ASP.NET 3.5控件和组件开发技术

    第1章 服务器控件概述及开发环境部署 .1 1.1 自定义服务器控件 1 1.2 服务器控件在软件开发过程中的作用 1 ...附录a .net 3.5技术教程系列——collection/asp.net ajax/ silverlight/jquery ...646

    asp.net夜话

    asp.net夜话全书 目录: 一、 ASP.NET 夜话之 1: ASP.NET 介绍 二、 ASP.NET 夜话之 2 :...九、 ASP.NET 夜话之 9 :验证控件 十、 ASP.NET 夜话之 10:复合控件和母版页 十一、 ASP.NET 夜话之 11: web.config 详解

    庖丁解牛 纵向切入ASP.NET 3.5控件和组件开发 part1

    注意:由于文件大小为111MB,但本人的上传权限只有60MB,所以分开两部分压缩上传。解压前必须与part2一起解压。...附录a .net 3.5技术教程系列——collection/asp.net ajax/ silverlight/jquery ...646

    庖丁解牛 纵向切入ASP.NET 3.5控件和组件开发 part2

    注意:由于文件大小为111MB,但本人的上传权限只有60MB,所以分开两部分压缩上传。解压前必须与part2一起解压。...附录a .net 3.5技术教程系列——collection/asp.net ajax/ silverlight/jquery ...646

    庖丁解牛纵向切入ASP.NET 3.5控件和组件开发技术.pdf

     本书主要介绍asp.net的控件开发,书中通过70多个例子讲解了asp.net控件开发技术的各个方面,而且剖析了很多控件中系统基类源代码,读者从这些系统源代码可以体会设计模式思想。如果扎实地掌握了asp.net控件的运行...

    [源代码] 《ASP.NET夜话》 随书源代码

    第09章 — 验证控件 第10章 — 复合控件和母版页 第11章 — web.config详解 第12章 — ASP.NET底层探秘 第13章 — ASP.NET中的AJAX开发 第14章 — 分布式开发 第15章 — ASP.NET中的三层架构 第16章 — 单元测试 第...

    net验证控件的气泡提示demo

    net验证控件的气泡提示demo [使用方法:] 1. 将WinValidator.dll引入到项目中; 2. 将WinValidator文件夹拷贝到web项目的根目录下; 2. 在.cs文件中加入引用using WinValidator; 3. 在Page_Load事件中插入如下代码: ...

    完全手册ASP.NETAjax实用开发详解(14-15)

     1.8.3 导入ASP.NET AJAX Control Toolkit中的控件  1.8.4 引用ASP.NET AJAX Control Toolkit中的程序集  1.8.5 ASP.NET AJAX Control Toolkit中的Web演示站点  1.8.6 ASP.NET AJAX Control Toolkit中的Web测试...

    ASP.NET Night Words

    9.3 asp.net验证控件概述 148 9.4 requiredfieldvalidator控件 149 9.5 comparevalidator控件 151 9.6 rangevalidator控件 155 9.7 正则表达式 157 9.8 regularexpressionvalidator控件 159 9.9 ...

    完全手册:ASP.net Ajax电子教程(1-8章)

     1.8.3 导入ASP.NET AJAX Control Toolkit中的控件  1.8.4 引用ASP.NET AJAX Control Toolkit中的程序集  1.8.5 ASP.NET AJAX Control Toolkit中的Web演示站点  1.8.6 ASP.NET AJAX Control Toolkit中的Web测试...

    asp.net知识库

    ASP.NET 2.0 验证控件新的功能 DataGridView中如何在textbox列中限制输入。 ASP.NET 2.0构建动态导航的Web应用程序(TreeView和Menu ) 体验.net2.0的优雅(3) -- 为您的 SiteMap 添加 控制转发功能 GridView控件...

    ASP.NET表单验证方法详解第1/2页

    但是验证控件收到了浏览器的限制,记得在一次开发过程中,使用FireFox浏览器进行浏览,发现所有的验证控件失灵,这个并非是ASP.NET设计的漏洞,只能说浏览器标准的不唯一造成的。 ASP.NET公有六种验证控件,分别如下...

    完全手册ASP.NETAjax实用开发详解(1-6)

     1.8.3 导入ASP.NET AJAX Control Toolkit中的控件  1.8.4 引用ASP.NET AJAX Control Toolkit中的程序集  1.8.5 ASP.NET AJAX Control Toolkit中的Web演示站点  1.8.6 ASP.NET AJAX Control Toolkit中的Web测试...

    完全手册ASP.NETAjax实用开发详解(12-13)

     1.8.3 导入ASP.NET AJAX Control Toolkit中的控件  1.8.4 引用ASP.NET AJAX Control Toolkit中的程序集  1.8.5 ASP.NET AJAX Control Toolkit中的Web演示站点  1.8.6 ASP.NET AJAX Control Toolkit中的Web测试...

Global site tag (gtag.js) - Google Analytics