RangeValidator コントロール (全般リファレンス)
入力コントロールの値を評価し、その値が指定した上限と下限の間に収まっているかどうかを確認します。
<asp:RangeValidator
AccessKey="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 コントロールの Type プロパティを "Currency" に設定した場合、MinimumValue プロパティと MaximumValue プロパティは、NumberFormatInfo.CurrencyDecimalDigits などで説明されている形式で指定する必要があります。正しく指定しないと、例外がスローされます。 |
RangeValidator コントロールの詳細については、System.Web.UI.WebControls.RangeValidator クラスを参照してください。
使用例
RangeValidator コントロールを使用して、テキスト ボックスに入力された値が 1 から 10 までの範囲内の値かどうかを検証する方法を、次のコード例に示します。 検証後に、その結果がページに表示されます。
セキュリティに関するメモ |
---|
この例には、ユーザー入力を受け付けるテキスト ボックスがあるため、セキュリティ上の脅威になる可能性があります。既定では、ASP.NET Web ページは、ユーザー入力にスクリプトまたは HTML 要素が含まれていないことを検証します。詳細については、「スクリプトによる攻略の概要」を参照してください。 |
<%@ Page Language="VB" AutoEventWireup="True" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml" >
<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>
<%@ 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 xmlns="http://www.w3.org/1999/xhtml" >
<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>