zoukankan      html  css  js  c++  java
  • .NET 中验证控件的使用

    下面的所有控件都用到errormassage(出错时显示信息)和 Display [Dynamic(错误动态显示),Static(错误静态显示)]

    使用时要根据具体情况设置Display,防止对网页外观产生影响。

    1、requiredfieldvalidator    限制空字段 ; 要点 Controltovalidate属性 用来绑定控制限制哪个控件。

    2、comparevalidator  比较2个字段控件,常有以下三种用法:

    (1):和固定值比较 ,方法有一些常用的算术运算,如:等于,大于.等
     
    要点,ControlToValidate属性 用来绑定控制限制哪个控件;operator 属性设顶算术运算方法,type 属性设置数据类型,

    valuetocompare 属性必须填写被比较项的值。

    (2):用于检查数据类型,检查输入的值是否为规定的数据类型;

    要点 :ControltoValidate 属性  同上,operator 属性此时选择 DateTypeCheck,type 属性选择相应的数据类型即可,
    其他的就不用管了

    (2):用于检验2次输入的值是否一致,如:注册时2次密码输入是否相同。

    要点 :Controltovalidate 属性同上,此时controltocopare 必须选择另外一个控件,这样就好2个进行比较了 ,

    operator 属性此时选择比较运算方法。

    3、RangeValidator  检查指定范围 
     
    ControlToValidate属性 用来绑定控制限制哪个控件,type 属性设置数据类型

    minimumvalue ;maximumvalue  分别设置最小值和最大值,

    4、RegularExpressionValidator 使用表达式检查值

    对输入的字符串进行检查,ControlToValidate属性 用来绑定控制限制哪个控件,
    ValidationExpression 属性输入验证表达式。(系统自带了常用表达式,表达式具体写法以后介绍)。

    5 CustomValidator 通过客户端或者服务器端函数检查值(自定义验证,如用户注册时检查用户名是否已经被注册等):
    ControlToValidate属性 同上,其 ServerValidate 事件用来编写验证程序;
    如:用于验证用户是否存在,如果存在则显示错误信息;args.IsValid :取出的值,args.IsValid  是否通过。

     protected void CustomValidator1_ServerValidate(object source, ServerValidateEventArgs args)
        {
            string username = args.Value;
            SqlConnection con = new SqlConnection("server=;database=user;uid=bb;pswd=dd;");
            con.open;
            SqlCommand cmd = new sqlcommand("select *from user where name=" + username, con);
            int a = Convert.ToInt32(cmd.ExecuteScalar());
            if (a > 0)
            {
                args.IsValid = false;
            }
            else {
                args.IsValid = true;
            }
        }


    6 ValidatorSummary 在页面中列出所有控件的错误。(验证汇总)

    把一个页面中验证控件的错误信息统一显示在一个地方(错误集中显示)


    附:page.isvalid   判断整个页面的验证是否通过(有一个未通过就为false)

    如果通过再提交服务器(主要基于服务器端验证)

    由于浏览器版本的不同,有的客户端(低版本)无法验证,从而产生错误,我们可以禁用客户端验证,如下
    %@Page ClinetTarget="DownLevel"  %
    这样所有验证都在服务器端。一定要判断 page.isvalid 是否有效。

    补充 如果一个按钮想不激活验证,可以把 CausesValidation="False" 这样就可以了.如取消按钮
    ----------------------------------------------------------------------------------------go to bed !
  • 相关阅读:
    ABP框架应用-MySQL数据库集成
    redis初识
    MySQL高级学习笔记
    Linux安装apache
    学习jvm(一)--java内存区域
    HashTable、HashMap与ConCurrentHashMap源码解读
    Linux安装禅道项目管理软件
    设计模式之六大原则
    设计模式之策略模式
    设计模式之分类
  • 原文地址:https://www.cnblogs.com/gergro/p/355354.html
Copyright © 2011-2022 走看看