主營業(yè)務(wù):網(wǎng)站制作 網(wǎng)站優(yōu)化 小程序制作 石家莊網(wǎng)站制作網(wǎng)站建設(shè)有限公司歡迎您!
石家莊閃云網(wǎng)絡(luò)科技有限公司
客服熱線15383239821
如何讓自己的網(wǎng)站更有質(zhì)量?

.Net驗證控件2

發(fā)布時間:2010/9/3 16:03:52

控件名 功能描敘
  RequiredFieldValidator(必須字段驗證) 用于檢查是否有輸入值
  Comparidator(比較驗證) 按設(shè)定比較兩個輸入
  Rangidator(范圍驗證) 輸入是否在指定范圍
  Regularexpression_rValidator(正則表達(dá)式驗證)正則表達(dá)式驗證控件
  CustomValidator(自定義驗證) 自定義驗證控件
  ValidationSummary(驗證總結(jié)) 總結(jié)驗證結(jié)果
  使用介紹:
  一:RequiredFieldValidator(必須字段驗證)的使用
  RequiredFieldValidator控件使用的標(biāo)準(zhǔn)代碼如下:
 ?。糀SP:RequiredFieldValidator id="Validator_Name" Runat="Server" 
  C
  ErrorMessage="出錯信息"
  Display="Static|Dymatic|None">
  占位符
  </ASP: RequiredFieldValidator >
  在以上代碼中:
  ControlToValidate:表示要進(jìn)行檢查控件ID;
  ErrorMessage:表示當(dāng)檢查不合法時,出現(xiàn)的錯誤信息;
  Display:錯誤信息的顯示方式;Static表示控件的錯誤信息在頁面中占有肯定位置;Dymatic表示控件錯誤信息出現(xiàn)時才占用頁面控件;None表示錯誤出現(xiàn)時不顯示,但是可以在ValidatorSummary中顯示;
  占位符:表示Display為Static時,錯誤信息占有"占位符"那么大的頁面空間
  實例:
 ?。糀SP:TextBox id="txtName" RunAt="Server"/>
 ?。糀SP:RequiredFieldValidator id="Validator1" Runat="Server"
  C
  ErrorMessage="姓名必須輸入"
  Display="Static">
  *姓名必須輸入
 ?。?ASP:RequiredFieldValidator>
  二:Comparidator(比較驗證)控件
  比較兩個控件的輸入是否符合程序設(shè)定
  屬性和RequiredFieldValidator基本相同
  三:Rangidator(范圍驗證)控件
  驗證輸入是否在一定范圍,范圍用MaximumValue(最大)和MinimunVlaue來確定,標(biāo)準(zhǔn)代碼如下:
 ?。糀SP:Rangidator id="Vaidator_ID" Runat="Server"
  c
  type="Integer"
  MinimumValue="最小值"
  MaximumValue="最大值"
  errorMessage="錯誤信息"
  Display="Static|Dymatic|None">
  占位符
 ?。?ASP:Rangidator>
  在以上代碼中:
  用MinimumValue和MaximumValue來界定控件輸入值得范圍,用type來定義控件輸入值的類型。
  四:RegularExpresionValidator(正則表達(dá)式)控件
  正則表達(dá)式驗證控件的功能非常強(qiáng)大,你可以自己容易構(gòu)造驗證方式,我們先來看看標(biāo)準(zhǔn)代碼:
 ?。糀SP:Regularexpression_rValidator id="Validator_ID" RunAt="Server"
  C
  Validati
  errorMessage="錯誤信息"
  display="Static">
  占位符
  </ASP:Regularexpression_rValidator> 
  在以上標(biāo)準(zhǔn)代碼中,Validationexpression_r是重點,現(xiàn)在來看看它的構(gòu)造:
  在Validationexpression_r中,不同的字符表示不同的含義:
  "."表示任意字符;
  "*"表示和其他表達(dá)式一起,表示容易組合;
  "[A-Z]"表示任意大寫字母;
  "\d"表示容易一個數(shù)字;
  注意,在以上表達(dá)式中,引號不包括在內(nèi);
  舉例:
  正則表達(dá)式:".*[A-Z]"表示數(shù)字開頭的任意字符組合其后接一個大寫字母。
  附正則表達(dá)式說明
  常用的有前4種
  在SR_SourceItem表中字段CHECKRULE中記錄該字段應(yīng)該使用的驗證控件,(以各驗證控件的名稱命名),在CHECKMSG字段中存放驗證時的提示消息,
  在DEFAULTVALUE字段中存放默認(rèn)值
  在程序里根據(jù)
  If(CHECKRULE != “”)
  {
  switch (控件名稱)
  {
  case("System.Web.UI.WebControls. RequiredFieldValidator "):
  //創(chuàng)建RequiredFieldValidator控件;
  break;
  case("System.Web.UI.WebControls.DropDownList"):
  ……
  break;
  }
  //根據(jù)名稱來創(chuàng)建控件
  }
  附:
  全部符號解釋
  字符 描述
  \ 將下一個字符標(biāo)記為一個特殊字符、或一個原義字符、或一個向后引用、或一個八進(jìn)制轉(zhuǎn)義符。例如, n  匹配字符 "n"。 \n  匹配一個換行符。序列  \\  匹配 "\" 而 "\(" 則匹配 "("。
  ^ 匹配輸入字符串的開始位置。如果設(shè)置了 RegExp 對象的 Multiline 屬性,^ 也匹配  \n  或  \r  之后的位置。
  $ 匹配輸入字符串的結(jié)束位置。如果設(shè)置了RegExp 對象的 Multiline 屬性,$ 也匹配  \n  或  \r  之前的位置。
  * 匹配前面的子表達(dá)式零次或多次。例如,zo* 能匹配 "z" 以及 "zoo"。* 等價于{0,}。
  + 匹配前面的子表達(dá)式一次或多次。例如, zo+  能匹配 "zo" 以及 "zoo",但不能匹配 "z"。+ 等價于 {1,}。
   匹配前面的子表達(dá)式零次或一次。例如,"do(es)?" 可以匹配 "do" 或 "does" 中的"do" 。? 等價于 {0,1}。
  {n} n 是一個非負(fù)整數(shù)。匹配確定的 n 次。例如, o{2}  不能匹配 "Bob" 中的  o ,但是能匹配 "food" 中的兩個 o。
  {n,} n 是一個非負(fù)整數(shù)。至少匹配n 次。例如, o{2,}  不能匹配 "Bob" 中的  o ,但能匹配 "foooood" 中的所有 o。 o{1,}  等價于  o+ 。 o{0,}  則等價于  o* 。
  {n,m} m 和 n 均為非負(fù)整數(shù),其中n <= m。最少匹配 n 次且最多匹配 m 次。例如,"o{1,3}" 將匹配 "fooooood" 中的前三個 o。 o{0,1}  等價于  o? 。請注意在逗號和兩個數(shù)之間不能有空格。
   當(dāng)該字符緊跟在任何一個其他限制符 (*, +, ?, {n}, {n,}, {n,m}) 后面時,匹配模式是非貪婪的。非貪婪模式盡可能少的匹配所搜索的字符串,而默認(rèn)的貪婪模式則盡可能多的匹配所搜索的字符串。例如,對于字符串 "oooo", o+?  將匹配單個 "o",而  o+  將匹配所有  o 。
  . 匹配除 "\n" 之外的任何單個字符。要匹配包括  \n  在內(nèi)的任何字符,請使用象  [.\n]  的模式。
  (pattern) 匹配 pattern 并獲取這一匹配。所獲取的匹配可以從產(chǎn)生的 Matches 集合得到,在VBScript 中使用 SubMatches 集合,在JScript 中則使用 $0…$9 屬性。要匹配圓括號字符,請使用  \(  或  \) 。
  (?:pattern) 匹配 pattern 但不獲取匹配結(jié)果,也就是說這是一個非獲取匹配,不進(jìn)行存儲供以后使用。這在使用 "或" 字符 (|) 來組合一個模式的各個部分是很有用。例如,  industr(?:y|ies) 就是一個比  industry|industries  更簡略的表達(dá)式。
  (?=pattern) 正向預(yù)查,在任何匹配 pattern 的字符串開始處匹配查找字符串。這是一個非獲取匹配,也就是說,該匹配不需要獲取供以后使用。例如, Windows (?=95|98|NT|2000)  能匹配 "Windows 2000" 中的 "Windows" ,但不能匹配 "Windows 3.1" 中的 "Windows"。預(yù)查不消耗字符,也就是說,在一個匹配發(fā)生后,在最后一次匹配之后立即開始下一次匹配的搜索,而不是從包含預(yù)查的字符之后開始。
  (?!pattern) 負(fù)向預(yù)查,在任何不匹配 pattern 的字符串開始處匹配查找字符串。這是一個非獲取匹配,也就是說,該匹配不需要獲取供以后使用。例如 Windows (?!95|98|NT|2000)  能匹配 "Windows 3.1" 中的 "Windows",但不能匹配 "Windows 2000" 中的 "Windows"。預(yù)查不消耗字符,也就是說,在一個匹配發(fā)生后,在最后一次匹配之后立即開始下一次匹配的搜索,而不是從包含預(yù)查的字符之后開始
  x|y 匹配 x 或 y。例如, z|food  能匹配 "z" 或 "food"。 (z|f)ood  則匹配 "zood" 或 "food"。
  [xyz] 字符集合。匹配所包含的任意一個字符。例如,  [abc]  可以匹配 "plain" 中的  a 。
  [^xyz] 負(fù)值字符集合。匹配未包含的任意字符。例如,  [^abc]  可以匹配 "plain" 中的 p 。
  [a-z] 字符范圍。匹配指定范圍內(nèi)的任意字符。例如, [a-z]  可以匹配  a  到  z  范圍內(nèi)的任意小寫字母字符。
  [^a-z] 負(fù)值字符范圍。匹配任何不在指定范圍內(nèi)的任意字符。例如, [^a-z]  可以匹配任何不在  a  到  z  范圍內(nèi)的任意字符。
  \b 匹配一個單詞邊界,也就是指單詞和空格間的位置。

上一篇: .Net驗證控件1
下一篇: C# Static

相關(guān)新聞推薦

在線客服 : 服務(wù)熱線:15383239821 電子郵箱: 27535611@qq.com

公司地址:石家莊市新華區(qū)九中街江西大廈4062

備案號:冀ICP備2022000585號-4