ASP.NET驗證控制項之CompareValidator

來源:互聯網
上載者:User

大家對CompareValidator應該非常熟悉了吧,它的作用就是比較兩個輸入框所輸入的值是否一致。最常用的就是在使用者註冊的時候檢驗兩次輸入的密碼是否一致。相信只要上過網的人都遇到過吧!好了廢話不多說,下面一起看看他的常用屬性:



屬性


描述


BackColor


 背景顏色。


ControlToCompare


 要與所驗證的輸入控制項進行比較的輸入控制項。


ControlToValidate


 要驗證的輸入控制項的 ID。


Display


 驗證控制項中錯誤資訊的顯示行為。


 合法值是:


·         None 驗證訊息從不內聯顯示。


·         Static 在頁面配置中分配用於顯示驗證訊息的空間。


·         Dynamic 如果驗證失敗,將用於顯示驗證訊息的空間動態添加到頁面。


EnableClientScript


 布爾值,規定是否啟用用戶端驗證。true為啟用,false為不啟用。


Enabled


 布爾值,規定是否啟用驗證控制項。true為啟用,false為不啟用。


ErrorMessage


 當驗證失敗時在 ValidationSummary 控制項中顯示的文本。


 注釋:如果未設定 Text 屬性,此文本將顯示在驗證控制項中。


ForeColor


 控制項的前景色彩。即錯誤資訊的字型顏色。


id


 控制項的唯一 ID。


IsValid


 布爾值,指示由 ControlToValidate 指定的輸入控制項是否通過驗證。true為通過,false為未通過。


Operator


 要執行的比較操作的類型。


 運算子是:


·         Equal 等於


·         GreaterThan 大於


·         GreaterThanEqual 大於等於


·         LessThan 小於


·         LessThanEqual 小於等於


·         NotEqual 不等於


·         DataTypeCheck 驗證資料類型(如果規定類型為整型,那麼輸入字元就不能通過驗證)


runat


 規定控制項是伺服器控制項。必須設定為 "server"。


Text


 當驗證失敗時顯示的訊息。


Type


 規定要對比的值的資料類型。


 類型有:


·         Currency


·         Date


·         Double


·         Integer


·         String


ValueToCompare


 一個常數值,該值要與由使用者輸入到所驗證的輸入控制項中的值進行比較。





下面是CompareValidator的實際應用:

 

 

<%@ Page Language="C#" AutoEventWireup="true" CodeBehind="密碼比較.aspx.cs" Inherits="WebApplication1.密碼比較" %><!DOCTYPE html><html xmlns="http://www.w3.org/1999/xhtml"><head id="Head1" runat="server">    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />    <title>密碼比較</title></head><body>    <form id="form1" runat="server">        <asp:Label ID="lbPWD1" runat="server" Text="請輸入密碼:"></asp:Label>        <asp:TextBox ID="txtPWD1" runat="server" TextMode="Password"></asp:TextBox>        <br />        <br />        <asp:Label ID="lbPWD2" runat="server" Text="請確認密碼:"></asp:Label>        <asp:TextBox ID="txtPWD2" runat="server" TextMode="Password"></asp:TextBox>        <asp:CompareValidator ID="CompareValidator1" ForeColor="Red" runat="server" ErrorMessage="兩次密碼輸入不一致" ControlToValidate="txtPWD1" ControlToCompare="txtPWD2"></asp:CompareValidator>        <br />        <br />        <asp:Button ID="btnSubmit" runat="server" Text="提交" />    </form></body></html>

 

  

當兩次輸入的密碼不一致是就會有如下提示(當然提示資訊是自己定義的):



另外需要注意的是:如果兩個框輸入的都是空格,不輸入多少,兩個的數量一不一樣,都會認為一致,因為CompareValidator將全為空白格的內容當做什麼都沒有。但是如果輸入了實際內容,不管在什麼地方加空格,只要兩個框的內容不一樣就會報錯。說明CompareValidator並沒有預設去掉首尾的空格。這一點需要注意。

 


雖然CompareValidator跟用js實現起來在對資源的消耗與使用者體驗上有一定的差距,不過它用起來比較簡單方便,適合入門時學習使用。以後再向大家介紹js的方式。 

 

相關文章

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.