• 16 ValidationSummary


    • 使用Validator错误消息会显示在放置控件的位置,这样就有可能表单非常大,用户看不到全部的提示信息。还有可能是错误信息太多散落各地,用户不便观看,希望能集中显示于某区域。
    • ValidationSummary控件用来集中显示错误消息。每个验证控件都有ErrorMessage和Text属性,ErrorMessage是用来显示到ValidationSummary中的值,Text是用来显示到VAlidator位置的值。如果Text为空,则ErrorMessage会同时显示到ValidationSummary和控件的位置,能知道指的是哪个控件;ErrorMessage一般显示的详细些,比如用户名不能为空等,text简短些,比如一个*号,这样才能从ValidationSummary每条错误信息中读取值出来。
    • ValidationSummary的DisplayMode显示模式,主要是显示的样式不一样。还有ShowMessageBox,如果此值为True时,会弹出窗口把错误信息显示出来。

    实例:

      在表单中放入textbox控件,主要用于输入

    1.      用户名:不能为空,用到RequiredFieldValidator
    2.      性别: DropdownList,默认显示"--请选择性别--",主要设置RequiredFieldValidator的InitialValue。
    3.      工资:主要用到RangeValidator,它的范围为5000-20000,数据类型为Currency;
    4.      入职日期:与2011-04-01日期比较,主要用到CompareValidator,为值比较。
    5.      转正日期:与入职日期比较,主要用到CompareValidator,与其它控件比较。
    6.      邮箱:  主要用到RegularExpressionValidator,设置它的ValidationExprission的正则表达式。
    7.     放上ValidationSummary汇总验证控件,你会发现有些错误信息会显示于它上面。
    8.    统一设置Text为*号,ErrorMessage可以自行设置。

    界面截图:

     

    aspx源码:

    <html xmlns="http://www.w3.org/1999/xhtml">
    <head runat="server">
        <title></title>
       <style type="text/css">
         .error li{color:Red;}
       </style>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
        
            <asp:Label ID="Label1" runat="server" Text="用户名:"></asp:Label>
            <asp:TextBox ID="txtUser" runat="server"></asp:TextBox>
            <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" 
                ControlToValidate="txtUser" ErrorMessage="用户名不能为空">*</asp:RequiredFieldValidator>
            <br />
            <asp:Label ID="Label2" runat="server" Text="性别:"></asp:Label>
            <asp:DropDownList ID="ddGender" runat="server">
                <asp:ListItem>--请选择性别--</asp:ListItem>
                <asp:ListItem></asp:ListItem>
                <asp:ListItem></asp:ListItem>
                <asp:ListItem>保密</asp:ListItem>
            </asp:DropDownList>
            <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" 
                ControlToValidate="ddGender" ErrorMessage="请选择性别" InitialValue="--请选择性别--">*</asp:RequiredFieldValidator>
            <br />
            工资:<asp:TextBox ID="txtSalary" runat="server"></asp:TextBox>
            <asp:RangeValidator ID="RangeValidator1" runat="server" 
                ControlToValidate="txtSalary" ErrorMessage="工资范围5000-20000" 
                MaximumValue="20000" MinimumValue="5000" Type="Currency">*</asp:RangeValidator>
            <br />
            入职日期:<asp:TextBox ID="txtIN" runat="server"></asp:TextBox>
            <asp:RequiredFieldValidator ID="RequiredFieldValidator3" runat="server" 
                ControlToValidate="txtIN" ErrorMessage="请输入入职日期">*</asp:RequiredFieldValidator>
            <asp:CompareValidator ID="CompareValidator1" runat="server" 
                ControlToValidate="txtIN" ErrorMessage="入职日期必须大于2011-4-1" 
                Operator="GreaterThanEqual" Type="Date" ValueToCompare="2011-4-1">*</asp:CompareValidator>
            <br />
            转正日期:<asp:TextBox ID="txtNew" runat="server"></asp:TextBox>
            <asp:CompareValidator ID="CompareValidator2" runat="server" 
                ControlToCompare="txtIN" ControlToValidate="txtNew" 
                ErrorMessage="转正日期必须大于或等于入职日期" Operator="GreaterThanEqual" Type="Date">*</asp:CompareValidator>
            <br />
            邮箱:<asp:TextBox ID="txtEmail" runat="server"></asp:TextBox>
            <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" 
                ControlToValidate="txtEmail" ErrorMessage="邮箱格式不正确" 
                ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*">*</asp:RegularExpressionValidator>
            <br />
            <asp:Button ID="Button1" runat="server" Text="Button" onclick="Button1_Click" />
            <br />
            <asp:ValidationSummary ID="ValidationSummary1" runat="server" CssClass="error" 
                ShowMessageBox="True" />
        
        </div>
        </form>
    </body>
    </html>

    button的cs码:

     protected void Button1_Click(object sender, EventArgs e)
            {
                if (!Page.IsValid)
                    return;
                Response.Write("数据更新成功.");
            }
  • 相关阅读:
    C# Redis实战(三)
    那些年我们一起追过的缓存写法(二)
    Linux Centos7 tomcat9安装配置,Centos Tomcat开机启动
    Mysql连接报错:Communications link failure
    WebLogic 12c静默安装
    Federated Learning with Matched Averaging
    xamarin调试显示详细的错误信息设置
    mongodb geometry地理空间数据库存储和索引
    GIS数据库设计
    mongodb脚本是使用什么语言编写的?mongodb怎么执行脚本?脚本怎么保存
  • 原文地址:https://www.cnblogs.com/yagzh2000/p/3130532.html
Copyright © 2020-2023  润新知