RangeValidator 控件测试输入控件的值是否在指定范围内。
RangeValidator 控件使用四个关键属性执行验证。ControlToValidate 属性包含要验证的输入控件。MinimumValue 和 MaximumValue 属性指定有效范围的最大值和最小值。
BaseCompareValidator.Type 属性用于指定要比较的值的数据类型。在执行验证操作之前,要比较的值被转换为此数据类型。
说明: 当 Type 属性设置为 Date 且当前日历类型为非公历时,验证程序只执行服务器端验证。验证程序客户端脚本只支持公历日历。
下表列出了可以进行比较的不同数据类型。
数据类型 | 说明 |
String | 字符串数据类型。 |
Integer | 32 位有符号整数数据类型。 |
Double | 双精度浮点数数据类型。 |
Date | 日期数据类型。 |
Currency | 一种可以包含货币符号的十进制数据类型。 |
说明: 如果输入控件为空,则表明验证成功。使用 RequiredFieldValidator 控件使该输入控件成为强制字段。
说明: 如果 MaximumValue 或 MinimumValue 属性指定的值无法转换为指定的 BaseCompareValidator.Type,则 RangeValidator 控件将引发异常。
说明: 当使用 UpdatePanel 控件内部的 RangeValidator 控件时,请确保该验证程序控件与关联的控件位于同一面板中。
示例
下面的示例说明如何在网页上创建 RangeValidator 控件,以检查输入到输入控件的值是否在比较范围内。
<%@ Page Language="C#" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html >
<head>
<title>RangeValidator Example</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"/>
<br /><br />
<asp:Label id="Label1"
runat="server"/>
<br /><br />
<asp:Button id="Button1"
Text="Submit"
OnClick="ButtonClick"
runat="server"/>
</form>
</body>
</html>