• ASP.NET验证控件之CompareValidator


    大家对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的方式。 

  • 相关阅读:
    笔记-1、线程基础、线程之间的共享和协作
    token的作用及实现原理
    mybatis+oracle如何批量执行多条update
    java程序员应该熟悉的20个有用的库(转)
    js-textarea文本换行符处理,Java后端以及js前端如何处理
    Spket,eclipse下安装Spket插件,格式化js
    关于equals变量 放在前后的问题
    @Autowired和@Qualifier共用出现提示信息Cannot find bean with qualifier XXXXX
    DOM树简单理解学习
    web.xml 中的listener、 filter、servlet 加载顺序及其详解
  • 原文地址:https://www.cnblogs.com/liushuijinger/p/2801058.html
Copyright © 2020-2023  润新知