ASP.NET驗證控制元件的使用

iDotNetSpace發表於2010-11-23
 自認為做了幾年Web,就很瞭解Asp.net,但最後才發現不是這個樣子的。首先沒有系統的學習,其次沒有深入的實踐,從學校到公司,一直在使用別人寫好的控制元件,甚至在很長一段時間,想寫幾個輪子出來。自嘲自己的物質之後,開始慢慢的瞭解這些內容。前些天瞭解了一下驗證控制元件,記錄下來,希望以後忘記的時候可以舒適起來。

    微軟提供六個驗證控制元件,更準確的說是五個驗證控制元件和一個集中顯示控制元件。在這些控制元件中,最簡單的莫過於RequiredFieldValidator 控制元件,這個控制元件是驗證必填項的,當驗證的控制元件沒有輸入資料時,就會驗證失敗,從而無法繼續執行。這個控制元件會在客戶端和伺服器段分別進行驗證;其次是RegularExpressionValidator 控制元件,這個控制元件需要一個正規表示式,ValidationExpression屬性是驗證的正規表示式,這個控制元件同樣會進行伺服器和客戶端的同時驗證,除非客戶端不支援js,或者顯示指出只進行伺服器驗證才可以阻止客戶端驗證。

    另外一個驗證控制元件是CustomValidator 控制元件,這個只能在伺服器端進行驗證,它的驗證方式非常靈活,當觸發驗證時,會執行伺服器的一個方法,這個方法需要在OnServerValidate中指定,並在後臺程式碼中進行驗證,在這段程式碼中需要為args.IsValid賦值,true或者false,驗證成功或失敗,就這麼簡單。

    另外兩個是CompareValidator 控制元件和RangeValidator 控制元件,第一個是用來比較的,可以將輸入控制元件的值同常數值或其他輸入控制元件的值相比較,以確定這兩個值是否與由比較運算子(小於、等於、大於等等)指定的關係相匹配。第二個是用來計算輸入資料,驗證是否在指定一個範圍內。

 

    最後說明,所有控制元件都有一個ControlToValidate屬性,指定要驗證的控制元件,ValidationGroup屬性,指定一個驗證組,在需要出發驗證的地方,例如Button,也將這個屬性設定相同。這樣就可以完成驗證了。

 

   至於ValidationSummary 控制元件,則是在一起顯示驗證資訊的。就這樣吧,希望若干年以後不會忘記。

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/12639172/viewspace-679371/,如需轉載,請註明出處,否則將追究法律責任。

相關文章