RegularExpressionValidator 類別
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
驗證相關聯之輸入控制項的值,是否符合規則運算式指定的模式。
public ref class RegularExpressionValidator : System::Web::UI::WebControls::BaseValidator
public class RegularExpressionValidator : System.Web.UI.WebControls.BaseValidator
type RegularExpressionValidator = class
inherit BaseValidator
Public Class RegularExpressionValidator
Inherits BaseValidator
- 繼承
範例
下列範例示範如何使用 RegularExpressionValidator 控件來驗證五位數郵政編碼。
重要
這個範例有一個可接受使用者輸入的文字方塊,這可能會造成安全性威脅。 根據預設,ASP.NET Web 網頁會驗證使用者輸入未包含指令碼或 HTML 項目。 如需詳細資訊,請參閱 Script Exploits Overview (指令碼攻擊概觀)。
<%@ 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>RegularExpressionValidator Example</title>
<script runat="server">
void ValidateBtn_Click(Object sender, EventArgs e)
{
if (Page.IsValid)
{
lblOutput.Text = "Page is Valid.";
}
else
{
lblOutput.Text = "Page is InValid.";
}
}
</script>
</head>
<body>
<form id="form1" runat="server">
<h3>RegularExpressionValidator Example</h3>
<table style="background-color:#eeeeee; padding:10">
<tr valign="top">
<td colspan="3">
<asp:Label ID="lblOutput"
Text="Enter a 5-digit ZIP Code"
runat="server"
AssociatedControlID="TextBox1"/>
</td>
</tr>
<tr>
<td colspan="3">
<b>Personal Information</b>
</td>
</tr>
<tr>
<td align="right">
Zip Code:
</td>
<td>
<asp:TextBox id="TextBox1"
runat="server"/>
</td>
<td>
<asp:RegularExpressionValidator id="RegularExpressionValidator1"
ControlToValidate="TextBox1"
ValidationExpression="\d{5}"
Display="Static"
ErrorMessage="ZIP code must be 5 numeric digits"
EnableClientScript="False"
runat="server"/>
</td>
</tr>
<tr>
<td></td>
<td>
<asp:Button text="Validate"
OnClick="ValidateBtn_Click"
runat="server" />
</td>
<td></td>
</tr>
</table>
</form>
</body>
</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>RegularExpressionValidator Example</title>
<script runat="server">
Sub ValidateBtn_Click(sender As Object, e As EventArgs)
If Page.IsValid Then
lblOutput.Text = "Page is Valid."
Else
lblOutput.Text = "Page is InValid."
End If
End Sub
</script>
</head>
<body>
<h3>RegularExpressionValidator Example</h3>
<br />
<form id="form1" runat="server">
<table style="background-color:#eeeeee; padding:10">
<tr valign="top">
<td colspan="3">
<asp:Label ID="lblOutput"
Text="Enter a 5-digit ZIP Code"
runat="server"
AssociatedControlID="TextBox1"/>
</td>
</tr>
<tr>
<td colspan="3">
<b>Personal Information</b>
</td>
</tr>
<tr>
<td align="right">
Zip Code:
</td>
<td>
<asp:TextBox id="TextBox1"
runat="server"/>
</td>
<td>
<asp:RegularExpressionValidator id="RegularExpressionValidator1"
ControlToValidate="TextBox1"
ValidationExpression="\d{5}"
Display="Static"
ErrorMessage="Zip code must be 5 numeric digits"
EnableClientScript="False"
runat="server"/>
</td>
</tr>
<tr>
<td></td>
<td>
<asp:Button text="Validate"
OnClick="ValidateBtn_Click"
runat="server" />
</td>
<td></td>
</tr>
</table>
</form>
</body>
</html>
備註
RegularExpressionValidator控件會檢查輸入控制項的值是否符合正規表示式所定義的模式。 這種類型的驗證可讓您檢查可預測的字元序列,例如電子郵件地址、電話號碼和郵遞區編碼中的字元。
注意
如果輸入控件是空的,驗證就會成功。 如果相關聯的輸入控件需要值,除了控件之外,請使用 RequiredFieldValidatorRegularExpressionValidator 控件。
除非瀏覽器不支援客戶端驗證或客戶端驗證,否則會執行伺服器端和客戶端驗證,方法是將 屬性設定 EnableClientScript 為 false
) ,以明確停用 (。
正則表達式驗證實作在用戶端上與伺服器上的實作稍有不同。 在用戶端上,會使用 JScript 正則表示式語法。 在伺服器上, System.Text.RegularExpressions.Regex 會使用語法。 由於 JScript 正則表示式語法是語法的 System.Text.RegularExpressions.Regex 子集,因此建議您使用 JScript 正則表示式語法,以便在用戶端和伺服器上產生相同的結果。
注意
當您在控件內UpdatePanel使用 RegularExpressionValidator 控件時,請確定驗證程式控件及其相關聯的控件位於相同的面板中。 如需使用 UpdatePanel 控件進行部分頁面更新的詳細資訊,請參閱 部分頁面轉譯概觀。
如需驗證控制件的其他資訊,請參閱 BaseValidator。 如需正則表達式的詳細資訊,請參閱 .NET Framework 正則表達式。
Accessibility
如需如何設定此控件以產生符合輔助功能標準的標記的相關信息,請參閱 Visual Studio 中的輔助功能,以及 ASP.NET 和 ASP.NET 控件和輔助功能。
建構函式
RegularExpressionValidator() |
初始化 RegularExpressionValidator 類別的新執行個體。 |
屬性
AccessKey |
取得或設定便捷鍵 (Access Key),可讓您快速巡覽至 Web 伺服器控制項。 (繼承來源 WebControl) |
Adapter |
針對控制項取得瀏覽器的特定配置器。 (繼承來源 Control) |
AppRelativeTemplateSourceDirectory |
取得或設定包含了此控制項之 Page 或 UserControl 物件的相對應用程式虛擬目錄。 (繼承來源 Control) |
AssociatedControlID |
不支援這個屬性。 (繼承來源 BaseValidator) |
Attributes |
取得任意屬性 (Attribute) 的集合 (只供呈現),不與控制項上的屬性 (Property) 對應。 (繼承來源 WebControl) |
BackColor |
取得或設定 Web 伺服器控制項的背景色彩。 (繼承來源 WebControl) |
BindingContainer |
取得包含了此控制項之資料繫結的控制項。 (繼承來源 Control) |
BorderColor |
取得或設定 Web 控制項的框線色彩。 (繼承來源 WebControl) |
BorderStyle |
取得或設定 Web 伺服器控制項的框線樣式。 (繼承來源 WebControl) |
BorderWidth |
取得或設定 Web 伺服器控制項的框線寬度。 (繼承來源 WebControl) |
ChildControlsCreated |
取得值,指出是否已經建立伺服器控制項的子控制項。 (繼承來源 Control) |
ClientID |
取得 ASP.NET 所產生之 HTML 標記的控制項識別碼。 (繼承來源 Control) |
ClientIDMode |
取得或設定用來產生 ClientID 屬性值的演算法。 (繼承來源 Control) |
ClientIDSeparator |
取得字元值,表示在 ClientID 屬性中所使用的分隔字元。 (繼承來源 Control) |
Context |
取得與目前 Web 要求的伺服器控制項關聯的 HttpContext 物件。 (繼承來源 Control) |
Controls |
取得 ControlCollection 物件,表示 UI 階層架構中指定之伺服器控制項的子控制項。 (繼承來源 Control) |
ControlStyle |
取得 Web 伺服器控制項的樣式。 這個屬性主要由控制項開發人員使用。 (繼承來源 WebControl) |
ControlStyleCreated |
取得值,指出 Style 物件是否已經為 ControlStyle 屬性建立。 這個屬性主要由控制項開發人員使用。 (繼承來源 WebControl) |
ControlToValidate |
取得或設定要驗證的輸入控制項。 (繼承來源 BaseValidator) |
CssClass |
取得或設定用戶端上 Web 伺服器控制項所呈現的階層式樣式表 (CSS)。 (繼承來源 WebControl) |
DataItemContainer |
如果命名容器實作 IDataItemContainer,則取得命名容器的參考。 (繼承來源 Control) |
DataKeysContainer |
如果命名容器實作 IDataKeysControl,則取得命名容器的參考。 (繼承來源 Control) |
DesignMode |
取得值,指出控制項是否正用於設計介面上。 (繼承來源 Control) |
Display |
取得或設定驗證控制項中錯誤訊息的顯示行為。 (繼承來源 BaseValidator) |
EnableClientScript |
取得或設定值,指出是否啟用用戶端驗證。 (繼承來源 BaseValidator) |
Enabled |
取得或設定值,指出是否啟用驗證控制項。 (繼承來源 BaseValidator) |
EnableTheming |
取得或設定值,指出佈景主題是否套用至此控制項。 (繼承來源 WebControl) |
EnableViewState |
取得或設定值,該值表示伺服器控制項是否對要求的用戶端而言保持其檢視狀態,以及它包含的任何子控制項狀態。 (繼承來源 Control) |
ErrorMessage |
取得或設定在驗證失敗時,ValidationSummary 控制項中顯示之錯誤訊息的文字。 (繼承來源 BaseValidator) |
Events |
取得控制項事件處理常式委派 (Delegate) 的清單。 這個屬性是唯讀的。 (繼承來源 Control) |
Font |
取得與 Web 伺服器控制項關聯的字型屬性。 (繼承來源 WebControl) |
ForeColor |
取得或設定在驗證失敗時,訊息顯示的色彩。 (繼承來源 BaseValidator) |
HasAttributes |
取得值,指出控制項是否已經設定屬性。 (繼承來源 WebControl) |
HasChildViewState |
取得值,指出目前伺服器控制項的子控制項是否有任何已儲存的檢視狀態設定。 (繼承來源 Control) |
Height |
取得或設定 Web 伺服器控制項的高度。 (繼承來源 WebControl) |
ID |
取得或設定指派給伺服器控制項的程式設計識別項。 (繼承來源 Control) |
IdSeparator |
取得用來分隔控制項識別項的字元。 (繼承來源 Control) |
IsChildControlStateCleared |
取得值,指出這個控制項中所包含的控制項是否有控制項狀態。 (繼承來源 Control) |
IsEnabled |
取得值,指出是否啟用控制項。 (繼承來源 WebControl) |
IsTrackingViewState |
取得值,指出伺服器控制項是否正在儲存檢視狀態的變更。 (繼承來源 Control) |
IsUnobtrusive |
取得值,指出控制項是否產生低調 JavaScript。 (繼承來源 BaseValidator) |
IsValid |
取得或設定值,指出相關輸入控制項是否通過驗證。 (繼承來源 BaseValidator) |
IsViewStateEnabled |
取得值,指出這個控制項是否已啟用檢視狀態。 (繼承來源 Control) |
LoadViewStateByID |
取得值,指出控制項是否依 ID (而不是索引) 參與載入其檢視狀態。 (繼承來源 Control) |
MatchTimeout |
取得或設定作業逾時之前執行單一比對作業的最大時間間隔。 |
NamingContainer |
取得伺服器控制項命名容器的參考,其建立唯一命名空間,在具有相同 ID 屬性值的伺服器控制項之間作區別。 (繼承來源 Control) |
Page |
取得含有伺服器控制項的 Page 執行個體的參考。 (繼承來源 Control) |
Parent |
在網頁控制階層架構中取得伺服器控制項之父控制項的參考。 (繼承來源 Control) |
PropertiesValid |
取得值,指出 ControlToValidate 屬性指定的控制項是否為有效的控制項。 (繼承來源 BaseValidator) |
RenderingCompatibility |
取得值,這個值會指定將與呈現 HTML 相容的 ASP.NET 版本。 (繼承來源 Control) |
RenderUplevel |
取得值,指出用戶端的瀏覽器是否支援「上層」呈現。 (繼承來源 BaseValidator) |
SetFocusOnError |
取得或設定值,指出驗證失敗時,焦點是否設定為 ControlToValidate 屬性指定的控制項。 (繼承來源 BaseValidator) |
Site |
當呈現在設計介面上時,取得裝載目前控制項之容器的資訊。 (繼承來源 Control) |
SkinID |
取得或設定要套用至控制項的面板。 (繼承來源 WebControl) |
Style |
取得文字屬性的集合,將呈現為 Web 伺服器控制項的外部標記上的樣式屬性。 (繼承來源 WebControl) |
SupportsDisabledAttribute |
取得值,這個值表示當控制項的 |
TabIndex |
取得或設定 Web 伺服器控制項的定位索引。 (繼承來源 WebControl) |
TagKey |
取得用於呈現 Label 控制項的 HTML 標記。 (繼承來源 Label) |
TagName |
取得控制項標記的名稱。 這個屬性主要由控制項開發人員使用。 (繼承來源 WebControl) |
TemplateControl |
取得或設定包含了此控制項之樣板的參考。 (繼承來源 Control) |
TemplateSourceDirectory |
取得包含目前伺服器控制項的 Page 或 UserControl 的虛擬目錄。 (繼承來源 Control) |
Text |
取得或設定驗證失敗時顯示於驗證控制項中的文字。 (繼承來源 BaseValidator) |
ToolTip |
取得或設定當滑鼠指標停留在 Web 伺服器控制項時顯示的文字。 (繼承來源 WebControl) |
UniqueID |
取得伺服器控制項唯一的、符合階層架構的識別項。 (繼承來源 Control) |
ValidateRequestMode |
取得或設定值,指出控制項是否對來自瀏覽器的用戶端輸入檢查潛在的危險值。 (繼承來源 Control) |
ValidationExpression |
取得或設定規則運算式,其決定用來驗證欄位的對比模式。 |
ValidationGroup |
取得或設定這個驗證控制項所屬之驗證群組的名稱。 (繼承來源 BaseValidator) |
ViewState |
取得狀態資訊的字典,允許您在相同網頁的多個要求之間,儲存和還原伺服器控制項的檢視狀態。 (繼承來源 Control) |
ViewStateIgnoresCase |
取得值,指出 StateBag 物件是否不區分大小寫。 (繼承來源 Control) |
ViewStateMode |
取得或設定這個控制項的檢視狀態模式。 (繼承來源 Control) |
Visible |
取得或設定值,指出伺服器控制項是否會轉譯為頁面上的 UI。 (繼承來源 Control) |
Width |
取得或設定 Web 伺服器控制項的寬度。 (繼承來源 WebControl) |
方法
事件
DataBinding |
發生於伺服器控制項繫結至資料來源時。 (繼承來源 Control) |
Disposed |
發生於伺服器控制項從記憶體釋放時,這是在要求 ASP.NET 網頁時,伺服器控制項生命週期的最後階段。 (繼承來源 Control) |
Init |
發生於初始化伺服器控制項時,是其生命週期中的第一個步驟。 (繼承來源 Control) |
Load |
發生於載入伺服器控制項至 Page 物件時。 (繼承來源 Control) |
PreRender |
在 Control 物件載入之後但在呈現之前發生。 (繼承來源 Control) |
Unload |
發生於伺服器控制項從記憶體卸載時。 (繼承來源 Control) |
明確介面實作
擴充方法
FindDataSourceControl(Control) |
傳回與指定之控制項的資料控制項相關聯的資料來源。 |
FindFieldTemplate(Control, String) |
傳回在指定之控制項的命名容器中所指定資料行的欄位樣板。 |
FindMetaTable(Control) |
傳回包含資料控制項的中繼資料表物件。 |