BaseValidator.Enabled 屬性
定義
重要
部分資訊涉及發行前產品,在發行之前可能會有大幅修改。 Microsoft 對此處提供的資訊,不做任何明確或隱含的瑕疵擔保。
取得或設定值,指出是否啟用驗證控制項。
public:
virtual property bool Enabled { bool get(); void set(bool value); };
public override bool Enabled { get; set; }
member this.Enabled : bool with get, set
Public Overrides Property Enabled As Boolean
屬性值
如果驗證控制項被啟用,則為 true,否則為 false。 預設為 true。
範例
下列程式代碼範例示範如何使用 Enabled 屬性,使用伺服器端程式代碼來啟用或停用網頁上的驗證控制件。
重要
這個範例有一個可接受使用者輸入的文字方塊,這可能會造成安全性威脅。 根據預設,ASP.NET Web 網頁會驗證使用者輸入未包含指令碼或 HTML 項目。 如需詳細資訊,請參閱 Script Exploits Overview (指令碼攻擊概觀)。
<%@ Page Language="C#" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
void Button_Click(Object sender, EventArgs e)
{
if (Page.IsValid)
{
MessageLabel.Text = "Page submitted successfully.";
}
else
{
MessageLabel.Text = "There is an error on the page.";
}
}
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Validator Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Validator Example</h3>
Enter a number from 1 to 10.
<asp:textbox id="NumberTextBox"
runat="server"/>
<asp:rangevalidator id="NumberCompareValidator"
controltovalidate="NumberTextBox"
enableclientscript="False"
type="Integer"
display="Dynamic"
errormessage="Please enter a value from 1 to 10."
maximumvalue="10"
minimumvalue="1"
text="*"
enabled="false"
runat="server"/>
<asp:requiredfieldvalidator id="TextBoxRequiredValidator"
controltovalidate="NumberTextBox"
enableclientscript="False"
display="Dynamic"
errormessage="Please enter a value."
text="*"
runat="server"/>
<br /><br />
<asp:button id="SubmitButton"
text="Submit"
onclick="Button_Click"
runat="server"/>
<br /><br />
<asp:label id="MessageLabel"
runat="server"/>
<br /><br />
<asp:validationsummary
id="ErrorSummary"
runat="server"/>
</form>
</body>
</html>
<%@ Page Language="VB" AutoEventWireup="False" %>
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<script runat="server">
Sub Button_Click(ByVal sender As Object, ByVal e As EventArgs) Handles SubmitButton.Click
If Page.IsValid Then
MessageLabel.Text = "Page submitted successfully."
Else
MessageLabel.Text = "There is an error on the page."
End If
End Sub
</script>
<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Validator Example</title>
</head>
<body>
<form id="form1" runat="server">
<h3>Validator Example</h3>
Enter a number from 1 to 10.
<asp:textbox id="NumberTextBox"
runat="server"/>
<asp:rangevalidator id="NumberCompareValidator"
controltovalidate="NumberTextBox"
enableclientscript="False"
type="Integer"
display="Dynamic"
errormessage="Please enter a value from 1 to 10."
maximumvalue="10"
minimumvalue="1"
text="*"
enabled="false"
runat="server"/>
<asp:requiredfieldvalidator id="TextBoxRequiredValidator"
controltovalidate="NumberTextBox"
enableclientscript="False"
display="Dynamic"
errormessage="Please enter a value."
text="*"
runat="server"/>
<br /><br />
<asp:button id="SubmitButton"
text="Submit"
runat="server"/>
<br /><br />
<asp:label id="MessageLabel"
runat="server"/>
<br /><br />
<asp:validationsummary
id="ErrorSummary"
runat="server"/>
</form>
</body>
</html>
下列程式代碼範例示範如何使用 Enabled 屬性,以使用用戶端程式代碼來啟用或停用網頁上的驗證控件。
備註
Enabled使用屬性來指定是否啟用驗證控制件。 您可以將此屬性設定為 false來停用驗證控制項。
Control.Visible將或 Enabled 屬性設定為 false ,將會防止執行驗證。 這會導致 IsValid 屬性一律評估為 true。
屬性 Enabled 與 屬性稍有不同 Control.Visible 。
Control.Visible如果驗證控件的 屬性設定true為 ,但 Enabled 屬性設定false為 ,則驗證控件仍會轉譯為客戶端驗證,但處於停用狀態。 接著,您可以使用 DHTML 腳本,在用戶端上重新啟用驗證控制件。