最新公告
  • 欢迎您光临起源地模板网,本站秉承服务宗旨 履行“站长”责任,销售只是起点 服务永无止境!立即加入钻石VIP
  • ASP.NET 的验证控件

    正文概述 掘金(捕获了一个异常)   2021-04-01   605

    前言

    前一段时间,接触了asp.net ,以牛腩新闻发布系统为实践项目,其中学到了一些新的知识,其中就有关于验证的一些控件,在这里总结一下。

    正文

    1.requiredFieldValidator控件(空值验证):验证空间内是否有数据输入,它是非空验证控件。

    属性:

    ControlToValidate:必须赋值的属性,表示要进行验证的控件的ID

    ErrorMessage:验证失败时显示的错误消息的文本

    Display:错误消息的显示方式,该值是一个枚举值,有3个值:

    Static,表示作为页面布局的物理组成部分验证程序内容

    *None,表示从不内联显示的验证程序内容

    DyNamic,表示验证失败时动态添加到页面中的验证程序内容

    EnableClientScript:指示是否启用客户端验证

    其中在我们的牛腩新闻发布系统中,使用的有其中几个属性。比如进行登录的时候,没有输入东西:

    例子:判空

    ASP.NET 的验证控件

    或者一个更加经典的:
    ASP.NET 的验证控件

     <p>用户名:<asp:TextBox ID="txtUserName" runat="server" CssClass="textbox"></asp:TextBox>
    <asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server" ErrorMessage="请输入用户名!" Text="*" ControlToValidate="txtUserName"></asp:RequiredFieldValidator>
     </p>
     <p>密         码:<asp:TextBox ID="txtpassword" runat="server" TextMode="Password" CssClass="textbox"></asp:TextBox>
     <asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ErrorMessage="请输入密码" Text="*" ControlToValidate="txtpassword"></asp:RequiredFieldValidator>
      </p>
    

    2.CompareValidator控件(比较控件):对一个控件中的值与另一个空间中的值或者某个常数值进行比较。

    属性:

    ControlToValidate:表示要进行验证的控件的ID

    CultureInvariantValues:该值指示是否在比较之前将值转换为非特定区域性格式

    Operator:要执行的比较操作,该值是一个枚举值

    Equal:相等;NotEqual:不相等

    GreaterThanEqual:大于;GreaterThanEqual:大于等于

    LessThan:小于;LessThanEqual:小于等于

    DataTypeCheck:输入到验证控件中的值与BaseCompareValidator.Type属性指定的数据类型之间的数据类型比较,如果无法将该值转换为指定的数据类型,则验证失败

    Type:在比较之前将所比较的值转换到的数据类型

    RenderUplevel:该值指示客户端的浏览器是否支持“上一级”呈现

    Text:验证失败时控件中显示的文本

    ValueToCompare:该值要与验证控件中的值进行比较

    例子:就是针对两次输入的密码不一致:
    <tr>
        <td class="auto-style2" rowspan="2">
            比较验证</td>
        <td class="auto-style3">
            密码:</td>
        <td class="auto-style1">
            <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
            <asp:CompareValidator ID="CompareValidator1" runat="server" ControlToCompare="TextBox2" ControlToValidate="TextBox3" ErrorMessage="两次密码不一致!" ForeColor="Red"></asp:CompareValidator>
        </td>
    </tr>
    <tr>
        <td class="auto-style3">
            重复密码:</td>
        <td class="auto-style1">
            <asp:TextBox ID="TextBox3" runat="server"></asp:TextBox>
        </td>
    </tr>
    

    3.RangeValidator控件(范围验证):验证用户的输入是否在指定的范围内。它可以检查数字对、字幕对和日期对限定的范围,其中边界表示为常数。

    属性:

    MaximumValue:验证范围的最大值
    MinimumValue:验证范围的最小值

    例子:年龄是否超范围
    <tr>
        <td class="auto-style2">范围验证</td>
        <td class="auto-style3">年龄:</td>
        <td class="auto-style1">
            <asp:TextBox ID="TextBox4" runat="server"></asp:TextBox>
            <asp:RangeValidator ID="RangeValidator1" runat="server" ControlToValidate="TextBox4" ErrorMessage="您的年龄不在注册范围内,请不要注册!" ForeColor="Red" MaximumValue="50" MinimumValue="20"></asp:RangeValidator>
        </td>
    </tr>
    

    4.RegularExpressionValidator控件(正则表达式):验证控件的值是否与某个正则表达式所定义的模式相匹配。通过这种类型的验证,可以检查可预知的字符序列,如身份证号码、点知邮件地址、电话号码、邮政编码等的字符序列。

    what:

    正则表达式(ValidationExpression):是由普通字符与特殊字符组成的文字模式,该模式描述在查找文字主体时待匹配的一个活多个字符串,正则表达式作为一个模板,将某个字符模式与所搜索的字符串进行匹配。ValidationExpression属性中用到的字符表示如下:

    "\w"表示任何单字符匹配,包括下划线;

    “+” 表示匹配前一个字符一次或多次;

    “.” 表示任意字符;

    “*” 表示和其他表达式一起,表示容易组合;

    “[A-Z]” 表示任意大写字母;

    “\d” 表示一个数字;

    “^” 表示匹配输入的开始位置;

    (在以上表达式中,引号不包括在内)

    例子:邮箱是否是正确的形式
    <tr>
        <td class="auto-style2">正则表达式验证</td>
        <td class="auto-style3">邮箱:</td>
        <td class="auto-style1">
            <asp:TextBox ID="TextBox5" runat="server"></asp:TextBox>
            <asp:RegularExpressionValidator ID="RegularExpressionValidator1" runat="server" ControlToValidate="TextBox5" ErrorMessage="请输入正确的邮箱地址!" ForeColor="Red" ValidationExpression="\w+([-+.']\w+)*@\w+([-.]\w+)*\.\w+([-.]\w+)*"></asp:RegularExpressionValidator>
        </td>
    </tr>
    

    5.CustomValidator控件(自定义验证):自定义函数验证

    属性:

    ClientValidationFunction:验证的自定义客户端脚本函数的名称

    ServarValidate:在服务器上执行验证时发生

    例子:自定义函数
    <tr>
        <td class="auto-style2">自定义验证</td>
        <td class="auto-style3">请任意填写一个偶数:</td>
        <td class="auto-style1">
            <asp:TextBox ID="TextBox6" runat="server"></asp:TextBox>
            <asp:CustomValidator ID="CustomValidator1" runat="server" ControlToValidate="TextBox6" ErrorMessage="请输入偶数!" OnServerValidate ="CumstomValidator" ForeColor="Red"></asp:CustomValidator>
        </td>
    </tr>
    

    6.ValidationSummary控件(验证汇总):允许在单个位置概述网页上所有验证控件的错误消息。该控件的功能就是手机所有验证控件的错误信息然后显示到单个位置上。

    what:

    Validationsummary控件有许多用于显示错误信息模式和显示错误信息方式的属性,这些属性是其它验证控件所不具备的,它的显示信息由每个验证控件的ErrorMessage属性指定的

    displayMode:验证摘要的显示模式,是一个枚举值

    List,验证摘要显示在列表中

    BulletList:验证摘要显示在项目符号列表中

    SingleParagraph:验证摘要显示在单个段落内

    ShowMessageBox:是否在消息框中显示验证摘要

    ShowSummary:是否内联显示验证摘要

    HeaderText:显示控件标题

    例子:验证信息都显示出来
    <tr>
        <td class="auto-style4">验证信息汇总</td>
        <td class="auto-style5" colspan="2">
            <asp:ValidationSummary ID="ValidationSummary1" runat="server" ForeColor="Red" ShowMessageBox ="true" />
        </td>
    </tr>
    

    效果:
    ASP.NET 的验证控件

    后记

    **有一点需要注意的是:**验证控件按钮都有一个Validation Group属性,该属性用来设置验证组。即如果一个页面上有一个A按钮和B按钮,要求A按钮触发验证,单击B按钮不出发验证。正常情况下,单击任何一个按钮都会触发验证控件的验证操作,这显然是不对的。 这时候需要将A按钮和验证控件的Validation Group属性设置为同一个值,即可实现单击A按钮出发验证。 还有一个办法,就是设置B按钮的CauseValidation属性为False。

    验证控件在ASP.net 中是比较基础的知识,我们可以经常的去温习,以后实践的时候也可以熟练的操作啦~


    起源地下载网 » ASP.NET 的验证控件

    常见问题FAQ

    免费下载或者VIP会员专享资源能否直接商用?
    本站所有资源版权均属于原作者所有,这里所提供资源均只能用于参考学习用,请勿直接商用。若由于商用引起版权纠纷,一切责任均由使用者承担。更多说明请参考 VIP介绍。
    提示下载完但解压或打开不了?
    最常见的情况是下载不完整: 可对比下载完压缩包的与网盘上的容量,若小于网盘提示的容量则是这个原因。这是浏览器下载的bug,建议用百度网盘软件或迅雷下载。若排除这种情况,可在对应资源底部留言,或 联络我们.。
    找不到素材资源介绍文章里的示例图片?
    对于PPT,KEY,Mockups,APP,网页模版等类型的素材,文章内用于介绍的图片通常并不包含在对应可供下载素材包内。这些相关商业图片需另外购买,且本站不负责(也没有办法)找到出处。 同样地一些字体文件也是这种情况,但部分素材会在素材包内有一份字体下载链接清单。
    模板不会安装或需要功能定制以及二次开发?
    请QQ联系我们

    发表评论

    还没有评论,快来抢沙发吧!

    如需帝国cms功能定制以及二次开发请联系我们

    联系作者

    请选择支付方式

    ×
    迅虎支付宝
    迅虎微信
    支付宝当面付
    余额支付
    ×
    微信扫码支付 0 元