C# 輸人驗證
當用戶輸入數(shù)據(jù)時,應(yīng)該檢查數(shù)據(jù)的有效性。檢查可在客戶端進行,也可以在服務(wù)器端進行。在客戶端檢查數(shù)據(jù)時,可使用JavaScript。但是,如果使用JavaScript在客戶端檢查了數(shù)據(jù),還應(yīng)該在服務(wù)器端再次檢查,因為你不能完全信任客戶端。在瀏覽器中是可以禁用JavaScript的,而且黑客能夠使用可接收錯誤輸入的不同JavaScript函數(shù)。在客戶端檢査數(shù)據(jù)可提高性能,因為在數(shù)據(jù)通過客戶端的驗證之前,不會在客戶端和服務(wù)器之間來回發(fā)送。
使用ASP.NET時,不需要自行編寫驗證函數(shù)。ASP.NET中有許多驗證控件可創(chuàng)建客戶端和服務(wù)器端驗證。在下例中,驗證控件RequiredFieldValidator與文本框playerlTextBox關(guān)聯(lián)在一起。所有驗證控件都具有ErrorMessage和ControlToValidate屬性。如果輸入不正確,將顯示ErrorMessage定義的消息。默認情況下,在驗證控件的位置顯示錯誤消息。ControlToValidate屬性定義了要檢查輸入的控件。
<asp:TextBox ID=uplayerlTextBox" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidatorl" runat="server"
ErrorMessage="Enter a name for player 1" ControlToValidate="playerlTextBox">
</asp:RequiredFieldValidator〉
下表列舉并描述了所有驗證控件。
控件 | 描述 |
RequiredFieldValidator | 指定要驗證的控件必須有輸入值。如果要驗證的控件有初始值,而用戶徭要修改這個初始值, 則可在驗證控件的InitialValue屈性中設(shè)置這個初始值 |
RangeValidator | 定乂了允許用戶輸入的最小值和最大值。該控件的屈性為MinimumValue和MaximumValue |
CompareValidator | 比較多個值(如密碼)。此驗證控件不僅可以比較兩個值是否相等,還可以使用其Operator屬性 設(shè)盟其他選項。Operator厲性的類型為ValidationCompareOperator,該類型定義了一些枚舉值,如Equal、NotEquaK GreaterThan 和 DataTypeCheck。使用 DataTypeCheck 時,可檢査輸入值是不是特定數(shù)據(jù)類型,例如是不是正確的日期輸入 |
點擊加載更多評論>>