RequiredFieldValidator 控制項 (一般參考)
評估輸入控制項的值,以確保使用者輸入值。
<asp:RequiredFieldValidator
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"
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"
InitialValue="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"
ValidationGroup="string"
Visible="True|False"
Width="size"
/>
備註
使用 RequiredFieldValidator 控制項讓輸入控制項成為強制欄位。 當執行驗證時,如果輸入控制項所包含的值沒有從其初始值變更的話,則輸入控制項驗證失敗。 這可以防止使用者沒有變更關聯的輸入控制項。 根據預設,初始值為空字串 (""),表示必須在輸入控制項中輸入值,才能通過驗證。
注意事項 |
---|
執行驗證之前,會移除輸入值開頭和結尾的額外空格。這麼做可防止在輸入控制項中輸入空格來通過驗證。 |
有時候,您會想要有不是空字串的初始值。 這對於當您有輸入控制項的預設值,而想要使用者選取不同值時非常有用。 例如,您可以使 ListBox 控制項根據預設擁有選取的項目,其中包含指示,以便讓使用者從清單中選取項目。 使用者必須從控制項中選取項目,但是您不想要使用者選取含有指示的項目。 您可以將其值指定為初始值,防止使用者選取這個項目。 如果使用者選取這個項目,RequiredFieldValidator 控制項便會顯示其錯誤訊息。 若要指定關聯輸入控制項的起始值,可以設定 InitialValue 屬性。
注意事項 |
---|
InitialValue 屬性不會為輸入控制項設定預設值。InitialValue 屬性甚至不必符合輸入控制項的預設值。它只指示您不要使用者在輸入控制項中輸入的值。當驗證執行時,如果輸入控制項包含了這個值,輸入控制項就會驗證失敗。 |
多個驗證器可以和同一個輸入控制項產生關聯。 例如,RequiredFieldValidator 控制項可用來確認控制項的輸入,同時 RangeValidator 控制項可用來確認輸入位於指定的資料範圍內。
如需 RequiredFieldValidator 控制項的詳細資訊,請參閱 RequiredFieldValidator 類別。
範例
下列程式碼範例會示範如何使用 RequiredFieldValidator 控制項,來讓 TextBox 控制項成為強制欄位。
安全性注意事項 |
---|
這個範例有一個可接受使用者輸入的文字方塊,這可能會造成安全性威脅。根據預設,ASP.NET Web 網頁會驗證該使用者的輸入內容中沒有包含指令碼或 HTML 項目。如需詳細資訊,請參閱指令碼攻擊概觀。 |
Name:
<asp:TextBox id="Text1"
Text="Enter a value"
runat="server"/>
<asp:RequiredFieldValidator id="RequiredFieldValidator1"
ControlToValidate="Text1"
Text="Required Field!"
runat="server"/>
<p />
<asp:Button id="Button1"
runat="server"
Text="Validate"/>
Name:
<asp:TextBox id="Text1"
Text="Enter a value"
runat="server"/>
<asp:RequiredFieldValidator id="RequiredFieldValidator1"
ControlToValidate="Text1"
Text="Required Field!"
runat="server"/>
<p />
<asp:Button id="Button1"
runat="server"
Text="Validate"/>