ASP.NET/Validate控制項

維基教科書,自由的教學讀本

共通的屬性[編輯]

標題文本
屬性 描述
BackColor 示例
ControlToValidate 要驗證的控制項的 id
Display 驗證控制項的顯示行為。合法值有:
   None - 控件不显示。仅用于 ValidationSummary 控件中显示错误消息。
Static - 如果验证失败,控件显示错误消息。即使输入通过验证,也在页面上预留显示消息的空间,即用于显示消息的空间是预先分配好的。
Dynamic - 如果验证失败,控件显示错误消息。如果输入通过验证,页面上不预留显示消息的空间,即用于显示消息的空间是动态添加的。
EnableClientScript 布爾值,規定是否啟用客戶端驗證。
Enabled 布爾值,規定是否啟用驗證控制項。
ErrorMessage 當驗證失敗時,在 ValidationSummary 控制項中顯示的文本。 注釋:如果未設置 Text 屬性,文本也會顯示在驗證控制項中。
ForeColor 控制項的前景顏色
id 控制項的唯一 id。
IsValid 布爾值,指示由 ControlToValidate 指定的控制項是否通過驗證。
runat 規定該控制項是一個伺服器控制項。必須設置為 "server"。
Text 當驗證失敗時顯示的消息。
示例 示例

RequiredFieldValidator[編輯]

用於使被驗證控制項成為一個必需(必填)的欄位。通過該控制項,如果輸入值的初始值未改變,則驗證失敗。默認情況下,初始值是空字符串 ("")。InitialValue 屬性不為輸入控制項設置默認值,它指示了您不希望用戶在輸入控制項中輸入的值。

注釋:輸入值的開頭和結尾的空格將在驗證前被移除。

RegularExpressionValidator[編輯]

ValidationExpression屬性寫入正則表達式。

RangeValidator[編輯]

  • MaximumValue
  • MinimumValue
  • Type: 空間輸入值的類型可以為String、Integer、Date、Double、Currency。

注釋:如果輸入控制項為空,驗證不會失敗。請使用 RequiredFieldValidator 控制項,使欄位必需(必填)。

注釋:如果輸入值無法轉換為指定的數據類型,驗證不會失敗。請使用 CompareValidator 控制項,將其 Operator 屬性設置為 ValidationCompareOperator.DataTypeCheck,這樣就可以校驗輸入值的數據類型了。

CompareValidator[編輯]

  • Operator 要執行的比較操作的類型。運算符有:Equal、GreaterThan、GreaterThanEqual、LessThan、LessThanEqual、NotEqual、DataTypeCheck
  • Type: 空間輸入值的類型可以為String、Integer、Date、Double、Currency。
  • ControlToCompare 要與所驗證的控制項進行比較的控制項名稱。
  • ValueToCompare 一個常數值,該值要與由用戶輸入到所驗證的輸入控制項中的值進行比較。

注釋:如果輸入控制項為空,則不會調用任何驗證函數,並且驗證將成功。使用 RequiredFieldValidator 控制項使欄位必需(必填)。

CustomValidator[編輯]

  • ClientValidationFunction 規定要被執行的客戶端腳本函數的名稱。
  • EnableClientScript 布爾值,規定是否啟用客戶端驗證
  • OnServerValidate 規定被執行的伺服器端驗證腳本函數的名稱。
  • ValidateEmptyText

如果驗證函數在server端運行,需要做一些設定:

  1. 控制項的ValidateEmptyText="True",這樣被驗證控制項為空時才可能會被驗證。
  2. 當所有前端驗證控制項通過之後,才會執行server端的定製驗證。
  3. 在button的處理函數中執行 Page.Validate("ValidationGroupName"); if (!Page.IsValid) return; 其中,ValidationGroupName是一個字符串值,出現在各控制項、驗證控制項的ValidationGroup="ValidationGroupName" 屬性-值對中。因為在較新版本的.NET中,定製驗證控制項的驗證函數必須通過Page.Validate函數才能在伺服器端被執行。

ValidationSummary[編輯]

在該控制項中顯示的錯誤消息是由每個驗證控制項的 ErrorMessage 屬性規定的。如果未設置驗證控制項的 ErrorMessage 屬性,就不會為那個驗證控制項顯示錯誤消息。

  • DisplayMode 如何顯示摘要。合法值有:BulletList、List、SingleParagraph
  • HeaderText ValidationSummary 控制項中的標題文本。
  • ShowMessageBox 布爾值,規定是否在消息框中顯示驗證摘要。
  • ShowSummary 布爾值,規定 ValidationSummary 控制項是否顯示或者隱藏。