016. asp.net的验证控件

RequiredFileldValidator: 检查某个字段是否输入; 空值检查

主要属性:
ControlToValidate:要验证的控件
ErrorMessage:错误提示信息

CompareValidator: 将某个字段的内容与指定的对象进行比较;

主要属性如下:

BackColor

CompareValidator 控件的背景颜色。

ControlToCompare

要与所验证的输入控件进行比较的输入控件。

ControlToValidate

要验证的输入控件的 ID。

Display

验证控件中错误信息的显示行为。合法值是: None 验证消息从不内联显示。Static 在页面布局中分配用于显示验证消息的空间。Dynamic 如果验证失败,将把

用于显示验证消息的控件动态添加到页面。

EnableClientScript

布尔值,规定是否启用客户端验证。

Enabled

布尔值,规定是否启用验证控件。

ErrorMessage

当验证失败时在 ValidationSummary 控件中显示的文本。注释:如果未设置 Text 属性,此文本将显示在验证控件中。

ForeColor

控件的前景颜色。

id

控件的唯一 ID。

IsValid

布尔值,指示由 ControlToValidate 指定的输入控件是否通过验证。

Operator

要执行的比较操作的类型。运算符是:Equal  GreaterThan  GreaterThanEqual LessThan LessThanEqual  NotEqual  DataTypeCheck

runat

规定控件是服务器控件。必须设置为 "server"。

Text

当验证失败时显示的消息。

Type

规定要对比的值的数据类型。类型有:Currency  Date  Double  Integer  String

ValueToCompare

一个常数值,该值要与由用户输入到所验证的输入控件中的值进行比较。

    
 Operator=&quot;Equal&quot; Type=&quot;String&quot;<br />
        1,用户注册时,<br />&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; 码:<asp:TextBox ID="txtUserpass" 
            runat="server"></asp:TextBox>
        <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
            ControlToValidate="txtUserpass" ErrorMessage="请输入密码"></asp:RequiredFieldValidator>
        <br />
        重复密码:<asp:TextBox ID="txtUserpass2" runat="server"></asp:TextBox>
        <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" 
            ControlToValidate="txtUserpass2" Display="Dynamic" ErrorMessage="请输入重复密码"></asp:RequiredFieldValidator>
        <asp:CompareValidator ID="CompareValidator1" runat="server" 
            ControlToCompare="txtUserpass" ControlToValidate="txtUserpass2" 
            ErrorMessage="重复密码有误" Operator="Equal"
           ></asp:CompareValidator>
        Operator=&quot;GeaterThan&quot; Type=&quot;Currency&quot;<br />
        2,请输入您应付金额:<asp:TextBox ID="txtMoney" runat="server"></asp:TextBox>
        <asp:CompareValidator ID="CompareValidator2" runat="server" 
            ControlToValidate="txtMoney" ErrorMessage="您输入的金额有误" Operator="GreaterThan" 
            Type="Currency" ValueToCompare="0"></asp:CompareValidator>
        <br />
        <input id="Reset1" type="reset" value="重置" />&nbsp;&nbsp;
        <asp:Button ID="Button1" runat="server" Text="提交" />
        <br />

 

RangeValidator: 检查某个字段的内容是否处于指定的范围内;

ControlToValidate:要验证的控件
ErrorMessage:错误提示信息
MaximumValue:最大值
MinimumValue:最小值
Type:Integer 整型 ;Date 日期 ;Double 双精度浮点型 ;String 字符串型(默认类型) ;Currency 货币类型

 <td style="font-size: 9pt; width: 87px">
                    <asp:RangeValidator ID="RangeValidator1" runat="server" ControlToValidate="txtMath"
                        ErrorMessage="分数在0~100之间" MaximumValue="100" MinimumValue="0" Type="Double" Width="97px"></asp:RangeValidator></td>
                大小写的验证:
        请输入大写词汇:<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
        <asp:RangeValidator ID="RangeValidator2" runat="server" 
            ControlToValidate="TextBox1" ErrorMessage="请输入大写词汇" MaximumValue="Z" 
            MinimumValue="M"></asp:RangeValidator>
        <br />
        请输入小写词汇:<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
        <asp:RangeValidator ID="RangeValidator3" runat="server" 
            ControlToValidate="TextBox2" ErrorMessage="请输入小些词汇" MaximumValue="z" 
            MinimumValue="a"></asp:RangeValidator>
        <br />

RegularExpressionValidaor: 检查输入的内容是否符合指定个格式; 电话号码/IP地址等的格式校验;

BackColor

RangeValidator 控件的背景颜色

ControlToValidate

要验证的控件的 id

Display

验证控件的显示行为。

合法的值有:None - 验证消息从不内联显示。Static - 在页面布局中分配用于显示验证消息的空间。

Dynamic - 如果验证失败,将把用于显示验证消息的控件动态添加到页面。

EnableClientScript

布尔值,规定是否启用客户端验证。

Enabled

布尔值,规定是否启用验证控件。

ErrorMessage

当验证失败时,在 ValidationSummary 控件中显示的文本。注释:如果未设置 Text 属性,文本也会显示在该验证控件中。

ForeColor

该控件的前景色。

id

控件的唯一 id。

IsValid

布尔值,指示关联的输入控件是否通过验证。

runat

规定该控件是一个服务器控件。必须设置为 "server"。

Text

当验证失败时显示的消息。

ValidationExpression

规定验证输入控件的正则表达式。在客户端和服务器上,表达式的语法是不同的。

<td style="font-size: 9pt; width: 87px">

                    <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="txtEmail"

                        ErrorMessage="格式不正确" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator></td>

CustomValidaor: 自定义验证条件;

BackColor

CustomValidator 控件的背景颜色。

ClientValidationFunction

规定用于验证的自定义客户端脚本函数的名称。

ControlToValidate

要验证的输入控件的 id。

Display

验证控件中错误信息的显示行为。合法的值有:None - 验证消息从不内联显示。Static - 在页面布局中分配用于显示验证消息的空间。

Dynamic - 如果验证失败,将把用于显示验证消息的控件动态添加到页面。

EnableClientScript

布尔值,该值指示是否启用客户端验证。

Enabled

布尔值,该值指示是否启用验证控件。

ErrorMessage

验证失败时 ValidationSummary 控件中显示的错误信息的文本。

注释:如果设置了 ErrorMessage 属性但没有设置 Text 属性,则验证控件中也将显示 ErrorMessage 属性的值。

ForeColor

控件的前景色。

id

控件的唯一 id。

IsValid

布尔值,该值指示关联的输入控件是否通过验证。

OnServerValidate

规定被执行的服务器端验证脚本函数的名称。

runat

规定该控件是服务器控件。必须设置为 "server"。

Text

当验证失败时显示的文本。

下面这个示例来源于互联网, 原贴地址(http://www.cnblogs.com/lhl98/archive/2012/10/31/2748549.html)

<%@ Page Language="C#" AutoEventWireup="true" CodeFile="Default.aspx.cs" Inherits="_Default"%>
<!DOCTYPE html PUBLIC"-//W3C//DTDXHTML1.0Transitional//EN""http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="Head1" runat="server">
  <title>CustomValidator验证控件用法的例子</title>
  <script type="text/javascript">
          //obj表示被验证的控件
      //args表示事件数据,args有两个属性
      //IsValid指示控件是否通过验证
      //Value表示被验证的控件的值
      function CheckEven(obj, args) {
          var numberPattern = /\d+/;
          //由于控件的ValidateEmptyText设置为true
          //所以当控件没有值时进行客户端验证
          if (!numberPattern.test(args.Value)) {
              args.IsValid = false; //表示未通过验证,出现错误提示
          }
          else if (args.Value % 2 == 0) {
              args.IsValid = true; //表示通过验证,不出现错误提示
          }
          else {
              args.IsValid = false; //表示未通过验证,出现错误提示
          }
      }
      function CheckMultiple3(obj, args) {
          //由于控件的ValidateEmptyText没有设置,使用了默认值false
          //所以当控件没有值时不进行客户端验证
          var numberPattern = /\d+/;
          if ((!numberPattern.test(args.Value)) || (args.Value % 3 != 0)) {
              args.IsValid = false;
          }
          else {
              args.IsValid = true;
          }
      }
  </script>
</head>
<body>
  <form id="form1" runat="server">
      <div>
          <table border="1" width="600">
              <tr><td colspan="2" align="center">CustomValidator验证控件用法的例子</td></tr>
              <tr><td>
                填一个3的倍数</td><td>
                <asp:TextBox ID="txtOdd" runat="server"></asp:TextBox>
                <asp:CustomValidator ID="CustomValidator2" runat="server" ControlToValidate="txtOdd"
                     ErrorMessage="请输入3的倍数" ClientValidationFunction="CheckMultiple3"
                        Display="Dynamic" OnServerValidate="CustomValidator2_ServerValidate"
                        ValidateEmptyText="True"></asp:CustomValidator>
               </td></tr>
              <tr>
                    <td>填一个偶数</td>
                    <td>
                    <asp:TextBox ID="txtEven" runat="server"></asp:TextBox>
                                        <asp:CustomValidator ID="CustomValidator1" runat="server" ControlToValidate="txtEven"
                    ErrorMessage="请输入偶数" ClientValidationFunction="CheckEven" ValidateEmptyText="True" OnServerValidate="CustomValidator1_ServerValidate"></asp:CustomValidator>
                    </td>
                </tr>
              <tr><td>
                <asp:Button ID="Button2" runat="server" Text="提交"/>
              </td>
                <td>
                <input id="Reset3" type="reset" value="重置"/></td>
                </tr>
          </table>
      </div>
  </form>
</body>
</html>

 

 

using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
    }
    //用于验证控件值是否为3的倍数
    protected void CustomValidator2_ServerValidate(object source, ServerValidateEventArgs args)
    {
        System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"\d+");
        //先用正则判断用户输入的是否能转换成数字
        if (!regex.IsMatch(args.Value))
        {
            args.IsValid = false;//表示验证不通过
        }
        else
        {
            //如果对3取模为0就是3的倍数
            args.IsValid = (int.Parse(args.Value) % 3 == 0);
        }
    }

    //用于验证控件值是否为偶数
    protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
    {
        System.Text.RegularExpressions.Regex regex = new System.Text.RegularExpressions.Regex(@"\d+");
        //先用正则判断用户输入的是否能转换成数字
        if (!regex.IsMatch(args.Value))
        {
            args.IsValid = false;
        }
        else
        {
            //如果对2取模为0就是偶数
            args.IsValid = (int.Parse(args.Value) % 2 == 0);
        }
    }
}

ValidationSummary: 错误汇总控件, 该控件不提供具体的验证功能, 只负责显示所有的验证报错信息;

DisplayMode

如何显示摘要。合法值有:BulletList   List   SingleParagraph

EnableClientScript

布尔值,规定是否启用客户端验证。

Enabled

布尔值,规定是否启用验证控件。

ForeColor

该控件的前景色。

HeaderText

ValidationSummary 控件中的标题文本。

id

控件的唯一 id。

runat

规定该控件是一个服务器控件。必须设置为 "server"。

ShowMessageBox

布尔值,指示是否在消息框中显示验证摘要。为True时, 网页上错误信息不在网页本身显示, 而是弹出一个模态对话框的形式显示; 如果不想将错误信息显示在网页上, 完全以对话框的形式显示, 则必须将ShowSummary属性设置为False; 否则, 弹出对话框的同时也会在页面中显示;

ShowSummary

布尔值,规定是否显示验证摘要。

                <td style="font-size: 9pt; width: 109px; height: 27px">
                    <asp:ValidationSummary ID="ValidationSummary1" runat="server" Width="150px"
                        Height="35px" />
                </td>

 

posted on 2016-12-06 15:58  印子  阅读(373)  评论(0编辑  收藏  举报

导航