当前位置: 首页 > 图文教程 > 网络编程 > ASP.NET > Validation服务器控件:RangeValidator控件

ASP.NET
不同映射模式下的直线输出的效果问题
ASP.NET开发下的MVC设计模式的实现
ASP.NET编写应用程序的十大技巧
ASP.NET中使用AJAX的简单方法
ASP.NET MVC实现自己的视图引擎
认识asp.net会话状态
ASP.NET实现页面传值的几种方法
.NET中容易混淆的几组重要概念
详解.NET中的动态编译技术
如何使用ASP.Net加密Cookie
ASP.NET 2.0跨网页提交的三种方法
ASP.NET 2.0创建母版页引来的麻烦
.Net整合其他平台的一些探讨
ASP.NET编程经验技巧10则
最佳实践 ADO.NET实用经验无保留曝光
在.NET上执行多线程操作要考虑的两大因素
.Net开发 细说Visual Basic.Net
ASP.NET网络编程中经常用到的27个函数集
ASP.NET防止用户多次登录的方法
对ASP.NET MVC项目中的视图做单元测试

ASP.NET 中的 Validation服务器控件:RangeValidator控件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-09-28   浏览: 102 ::
收藏到网摘: n/a

阅读此文请先查看软晨学习网的:ASP.NET入门教程:Validation服务器控件,简单讲述了Web服务器控件的使用方法。

定义和用法

RangeValidator 控件用于检测用户输入的值是否介于两个值之间。可以对不同类型的值进行比较,比如数字、日期以及字符。计算输入控件的值,以确定该值是否在指定的上限与下限之间。

注释:如果输入控件为空,验证不会失败。请使用 RequiredFieldValidator 控件,使字段成为必选字段。

注释:如果输入值无法转换为指定的数据类型,验证也不会失败。请使用 CompareValidator 控件,将其 Operator 属性设置为 ValidationCompareOperator.DataTypeCheck,这样就可以校验输入值的数据类型了。

属性

属性 描述
BackColor RangeValidator 控件的背景颜色
ControlToValidate 要验证的控件的 id
Display 验证控件的显示行为。

合法的值有:

  • None - 验证消息从不内联显示。
  • Static - 在页面布局中分配用于显示验证消息的空间。
  • Dynamic - 如果验证失败,将用于显示验证消息的空间动态添加到页面。
EnableClientScript 布尔值,规定是否启用客户端验证。
Enabled 布尔值,规定是否启用验证控件。
ErrorMessage

当验证失败时,在 ValidationSummary 控件中显示的文本。

注释:如果未设置 Text 属性,文本也会显示在该验证控件中。

ForeColor 该控件的前景色。
id 控件的唯一 id。
IsValid 布尔值,指示关联的输入控件是否通过验证。
MaximumValue 规定输入控件的最大值。
MinimumValue 规定输入控件的最小值。
runat 规定该控件是一个服务器控件。必须设置为 "server"。
Type

规定要检测的值的数据类型。类型有:

  • Currency
  • Date
  • Double
  • Integer
  • String
Text 当验证失败时显示的消息。

语法

<asp:RangeValidator
    AccessKey="string"
    AssociatedControlID="string"
    BackColor="color name|#dddddd"
    BorderColor="color name|#dddddd"
    BorderStyle="NotSet|None|Dotted|Dashed|Solid|Double|Groove|Ridge|
        Inset|Outset"
    BorderWidth="size"
    ControlToValidate="string"
    CssClass="string"
    CultureInvariantValues="True|False"
    Display="None|Static|Dynamic"
    EnableClientScript="True|False"
    Enabled="True|False"
    EnableTheming="True|False"
    EnableViewState="True|False"
    ErrorMessage="string"
    Font-Bold="True|False"
    Font-Italic="True|False"
    Font-Names="string"
    Font-Overline="True|False"
    Font-Size="string|Smaller|Larger|XX-Small|X-Small|Small|Medium|
                Large|X-Large|XX-Large"
        Font-Strikeout="True|False"
    Font-Underline="True|False"
    ForeColor="color name|#dddddd"
    Height="size"
    ID="string"
    MaximumValue="string"
    MinimumValue="string"
    OnDataBinding="DataBinding event handler"
    OnDisposed="Disposed event handler"
    OnInit="Init event handler"
    OnLoad="Load event handler"
    OnPreRender="PreRender event handler"
    OnUnload="Unload event handler"
    runat="server"
    SetFocusOnError="True|False"
    SkinID="string"
    Style="string"
    TabIndex="integer"
    Text="string"
    ToolTip="string"
    Type="String|Integer|Double|Date|Currency"
    ValidationGroup="string"
    Visible="True|False"
    Width="size"
/>

备注:RangeValidator 控件使您可以检查用户的输入是否在指定的上限与下限之间。可以检查数字对、字母对和日期对限定的范围。边界表示为常数。

使用 ControlToValidate 属性指定要验证的输入控件。MinimumValue 和 MaximumValue 属性分别指定有效范围的最小值和最大值。

Type 属性用于指定要比较的值的数据类型。在执行任何比较之前,先将要比较的值转换为该数据类型。

注意:如果输入控件为空,则不调用任何验证函数且验证成功。使用 RequiredFieldValidator 控件防止用户跳过某个输入控件。
 
注意:如果 MaximumValue 或 MinimumValue 属性指定的值无法转换为 Type 属性指定的数据类型,则 RangeValidator 控件将引发异常。

示例

下面的代码示例演示如何使用 RangeValidator 控件验证在文本框中输入的值是否介于 1 和 10 之间。验证结果随后显示在页上。

Visual Basic

<%@ Page Language="VB" AutoEventWireup="True" %>
<html>
<head>
<title>RangeValidator Control (General Reference)</title>
   <script runat="server">
      Sub ButtonClick(sender As Object, e As EventArgs)
         If Page.IsValid Then       
            Label1.Text="Page is valid."        
         Else
          Label1.Text="Page is not valid!!"
         End If
      End Sub
   </script>
</head>
<body>
   <form id="Form1" runat="server">
      <h3>RangeValidator Example</h3>
      Enter a number from 1 to 10:
      <br />
      <asp:TextBox id="TextBox1"
           runat="server"/>
      <br />
      <asp:RangeValidator id="Range1"
           ControlToValidate="TextBox1"
           MinimumValue="1"
           MaximumValue="10"
           Type="Integer"
           EnableClientScript="false"
           Text="The value must be from 1 to 10!"
           runat="server"/>
      <p />
      <asp:Label id="Label1"
           runat="server"/>
      <p />
      <asp:Button id="Button1"
           Text="Submit"
           OnClick="ButtonClick"
           runat="server"/>
   </form>
</body>
</html>

C#

<%@ Page Language="C#" AutoEventWireup="True" %>
<html>
<head>
<title>RangeValidator Control (General Reference)</title>
   <script runat="server">
      void ButtonClick(Object sender, EventArgs e)
      {
         if (Page.IsValid)
         {
            Label1.Text="Page is valid.";
         }
         else
         {
            Label1.Text="Page is not valid!!";
         }
      }
   </script>
</head>
<body>
   <form id="Form1" runat="server">
      <h3>RangeValidator Example</h3>
      Enter a number from 1 to 10:
      <br />
      <asp:TextBox id="TextBox1"
           runat="server"/>
      <br />
      <asp:RangeValidator id="Range1"
           ControlToValidate="TextBox1"
           MinimumValue="1"
           MaximumValue="10"
           Type="Integer"
           EnableClientScript="false"
           Text="The value must be from 1 to 10!"
           runat="server"/>
      <p />
      <asp:Label id="Label1"
           runat="server"/>
      <p />
      <asp:Button id="Button1"
           Text="Submit"
           OnClick="ButtonClick"
           runat="server"/>
   </form>
</body>
</html>