Validation 服务器控件

Validation 服务器控件用于验证输入控件的数据。如果数据未通过验证,则向用户显示错误消息。

创建 Validation 服务器控件的语法是:

<asp:control_name id="some_id" runat="server" />
Validation 服务器控件 描述
CompareValidator 把一个输入控件的值与另一个输入控件或一个固定的值进行对比。
CustomValidator 允许您编写一个方法,来处理输入值的验证。
RangeValidator 在两个值的范围内检查输入的值。
RegularExpressionValidator 确保输入控件的值匹配指定的模式。
RequiredFieldValidator 是输入控件成为必需(必填)的字段。
ValidationSummary 显示网页中所有验证错误的报告。
  1. CompareValidator
    1. CompareValidator 控件用于将一个输入控件的值与另一个输入控件的值或常数值进行比较。
    2. 主要属性:
      描述
      ControlToValidate 要验证的控件的 id。
      ControlToCompare 要与所验证的控件进行比较的控件名称。
      Display None - 控件不显示,static静态|显示,Dynamic 动态|显示
      ErrorMessage 当验证失败时,在 ValidationSummary 控件中显示的文本。/或者text
      IsValid 布尔值,指示由 ControlToValidate 指定的控件是否通过验证。
      Operator
      • Equal
      • GreaterThan
      • GreaterThanEqual
      • LessThan
      • LessThanEqual
      • NotEqual
      • DataTypeCheck
      ValueToCompare 用于比较的常数值
      Type
      • Currency
      • Date
      • Double
      • Integer
      • String
    3. 实例:

      添加一个名为CompareValidator.aspx的Web页面,在其中添加一个文本框,用于输入日期,要求输入的日期必须是一个当前日期以后的日期,使用CompareValidator控件来验证文本框的输入。

    4. 代码:
      <form id="form1" runat="server">
      <div>
      <br />
      输入日期:<asp:TextBox ID="TextBox1" runat="server" TextMode="Date"></asp:TextBox>
      <asp:CompareValidator ID="CompareValidator1" runat="server" ControlToValidate="TextBox1" ValueToCompare="2018/12/11" Type="Date" Operator="GreaterThan" Display="Dynamic" ErrorMessage="日期必须在今天以后"></asp:CompareValidator>
      <br />
      </div>
      </form>
  2. CustomValidator

    1. CustomValidator 控件允许您书写处理输入值验证的方法。
    2. 属性:
      属性 描述
      ClientValidationFunction 规定要被执行的客户端脚本函数的名称。
      OnServerValidate 规定被执行的服务器端验证脚本函数的名称。
    3. 实例:

      添加一个名为CustomValidator.aspx的Web页面,编写自定义验证控件的验证代码用于验证输入的正整数是素数。

    4. 代码:
      <form id="form1" runat="server">
      <div>
      输入一个整数:<asp:TextBox ID="TextBox1" runat="server" TextMode="Number"></asp:TextBox>
      <asp:CustomValidator ID="CustomValidator1" runat="server" ErrorMessage="不是素数" ContrlToValidate="TextBox1" OnServerValidate="CustomValidator1_ServerValidate"></asp:CustomValidator>
      <br />
      <asp:Button ID="Button1" runat="server" Text="确定" />
      </div>
      </form>
      protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs e)
      {
      int i;
      int n = int.Parse(TextBox1.Text);
      for( i = ; i <n; i++)
      {
      if (n % i == )
      {
      break;
      }
      }
      if (i >= n)
      e.IsValid = true;
      else e.IsValid = false;
      }
  3. RangeValidator
    1. RangeValidator 控件用于检测用户输入的值是否介于两个值之间。可以对不同类型的值进行比较,比如数字、日期和字符。
    2. 属性:
      属性 描述
      MaximumValue 规定输入控件的最大值。
      MinimumValue 规定输入控件的最小值。
    3. 实例:

      添加一个名为RangeValidator.aspx的Web页面,在其中添加一个“考生年龄”的输入文本框,要求输入的值必须在18到80之间,使用RangeValidator控件验证用户在文本框中输入的内容是否在有效范围内。

    4. 代码:
      <form id="form1" runat="server">
      <p>
      考生年龄:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
      <asp:RangeValidator ID="RangeValidator1" runat="server" ControlToValidate="TextBox1" MaximumValue="80" MinimumValue="18" Type="Integer" Text="在18-80之间" ErrorMessage ="必须在18-80之间"></asp:RangeValidator>
      <asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="确定" />
      </p>
      </form>
  4. RegularExpressionValidator
    1. RegularExpressionValidator 控件用于验证输入值是否匹配指定的模式。
    2. 主要属性:
      属性 描述
      ValidationExpression 规定验证输入控件的正则表达式。
    3. 实例:验证

      固定电话 (区号-电话号)

      Email( someone@domain.com)1129875586@qq.com

    4. 代码:
       电子邮箱:<asp:TextBox ID="TextBox7" runat="server"></asp:TextBox>
      <asp:RegularExpressionValidator ID="RegularExpressionValidator4" ControlToValidate ="TextBox7" ValidationExpression=".{1,}@.{3,}" runat="server" ErrorMessage="电子邮件的格式不正确"></asp:RegularExpressionValidator>
      <asp:Label ID="Label1" runat="server" Text="固定电话"></asp:Label>
      :<asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
      <asp:RegularExpressionValidator ID="RegularExpressionValidator3" runat="server" ControlToValidate="TextBox4" ValidationExpression="\\(\\d{3}\\)\\s\\d{3}-\\d{4}" ErrorMessage="电话形式为XXX-XXXXX"></asp:RegularExpressionValidator>
  5. RequiredFieldValidator
    1. RequiredFieldValidator 控件用于使输入控件成为一个必需(必填)的字段。
    2. 属性:
      属性 描述
      InitialValue 定输入控件的初始值(开始值)。默认是 ""。
    3. 实例:

      用户名 (非空)

      4.代码:

  用户名:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" InitialValue="" ControlToValidate="TextBox1" runat="server" ErrorMessage="用户名不能为空"></asp:RequiredFieldValidator>

6.ValidationSummary

   1.ValidationSummary 控件用于显示网页中所有验证错误的摘要。

2.主要 属性:

属性 描述
DisplayMode 如何显示摘要。合法值有:

  • BulletList
  • List
  • SingleParagraph
HeaderText ValidationSummary 控件中的标题文本
ShowMessageBox 布尔值,规定是否在消息框中显示验证摘要。
ShowSummary 布尔值,规定 ValidationSummary 控件是否显示或者隐藏。

7.注明:每个控件相同的属性有

属性 描述
id 控件的唯一 id。
runat 规定该控件是一个服务器控件。必须设置为 "server"。
ControlToValidate 要验证的控件的 id。
ErrorMessage 当验证失败时,在 ValidationSummary 控件中显示的文本。 注释:如果未设置 Text 属性,文本也会显示在验证控件中。
IsValid 布尔值,指示由 ControlToValidate 指定的控件是否通过验证。
BackColor 控件的背景颜色。

【ASP.NET】Validation 服务器控件的更多相关文章

  1. ASP开发中服务器控件和普通控件的区别

    1.对于服务器按钮控件(即<asp:Button>类型的按钮):服务器响应事件:OnClick客户端响应属性:OnClientClick 2.对于html按钮控件(即<input t ...

  2. 【转】ASP.NET中服务器控件Table动态生成表格及其属性介绍

    下文所有内容转自开源中国:http://www.oschina.net/question/565065_86453#tags_nav ================================= ...

  3. [置顶] ASP.Net中服务器控件的生命周期

    (1)初始化:在此阶段中,主要完成两项工作:一.初始化在传入Web请求生命周期内所需的设置;二.跟踪视图状态.首先,页面框架通过默认方式引发Init事件,并调用OnInit()方法,控件开发人员可以重 ...

  4. ASP.NET中服务器控件的生命周期

    服务器控件的生命周期是创建服务器控件最重要的概念.作为开发人员,必须对服务器控件生命周期深刻理解.当然,这不是一朝一夕就可以做到的.对于学习控件开发技术的初学者,可以不必掌握得非常详细深入,只需对服务 ...

  5. ASP.net 常用服务器控件

    新人初学,有错请指,大神轻喷. .net中有HTML控件和标准服务器控件. 老师教学用的是vs2010是这样分的,不知道15里是不是这样. 如果使用HTML控件我们就会发现页面中加载了原本HTML代码 ...

  6. Js触发ASP.NET Validation控件的验证, 同时获取前台验证结果(不包括CustomValidator)

    function CallValidate(group) { if (typeof (Page_ClientValidate) == "function") { Page_Bloc ...

  7. asp.net中 服务器控件中onselectedindexchanged 没有反应的解决方案

    最近发现项目中一个BUG就是 DropDownList 中的onselectedindexchanged 没有反应 AutoPostBack="true"和页面中的<%@ P ...

  8. asp.net-常用服务器控件-20180329

    常用服务器控件 1.文本类型控件 Label控件 TextBox控件 2.按钮类型控件 Button控件 ImageButton控件 3.选择类型控件 CheckBox控件 RadioButton控件 ...

  9. ASP.NET自定义服务器控件

    本文通过创建一个最简单的服务器控件,演示开发服务器端控件的流程. 文章内容整理自MSDN的编程指南,原文地址在文章末尾的资源中. 本文创建一个简单的服务器控件,名为 RedLabel. 它的使用方式为 ...

随机推荐

  1. Class.forname和ClassLoader.loadClass的源码分析

    最近在研读<深入理解java虚拟机:JVM高继特性与最佳实践>第二版, 今天想起来很久前,写数据库连接,使用Class.forName,当时没有深究,所以便简单的看了下源码,顺便做了以下记 ...

  2. 《css网站布局实录》(李超)——读书札记

    1.web表现层技术 2.HTML链接设计思想 3.对信息进行合理的分析.分类与处理来创造商业价值. 4.头部描述浏览器所需信息,主体包含所需要展现的具体内容. 5.HTML(XHTML)XML 6. ...

  3. Spring系列(一) Spring的核心

    Spring 简介 Spring 是一个开源轻量级企业应用架构,目的是为了简化企业级应用开发.(1)Spring 框架可以帮我们管理对象的生命周期,帮助我们管理对象间的依赖关系,相互协作:(2)Spr ...

  4. 【原创】大数据基础之HDFS(1)HDFS新创建文件如何分配Datanode

    HDFS中的File由Block组成,一个File包含一个或多个Block,当创建File时会创建一个Block,然后根据配置的副本数量(默认是3)申请3个Datanode来存放这个Block: 通过 ...

  5. css 冷知识

    *{margin: 0;padding: 0;} li{list-style-type:none; }ul{list-style: none;}img{border: none;}ul,input,s ...

  6. Mac OSX 系统搭建 Java 开发环境

    转载:https://www.cnblogs.com/zjx2711904647/p/7735556.html 1. 安装JDK 双击jdk-9.0.1_osx-x64_bin.dmg文件进行安装 2 ...

  7. Nikto and whatweb

    root@kali:~# nikto -host www.baidu.com- Nikto v2.1.6------------------------------------------------ ...

  8. mac os app 开发

    macOS 新手开发:第 1 部分 macOS 新手开发:第 2 部分 macOS 新手开发:第 3 部分

  9. python 基于机器学习识别验证码

    1.背景    验证码自动识别在模拟登陆上使用的较为广泛,一直有耳闻好多人在使用机器学习来识别验证码,最近因为刚好接触这方面的知识,所以特定研究了一番.发现网上已有很多基于machine learni ...

  10. Java Spring Boot VS .NetCore (六) UI thymeleaf vs cshtml

    Java Spring Boot VS .NetCore (一)来一个简单的 Hello World Java Spring Boot VS .NetCore (二)实现一个过滤器Filter Jav ...