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 !
  • 相关阅读:
    数学+高精度 ZOJ 2313 Chinese Girls' Amusement
    最短路(Bellman_Ford) POJ 1860 Currency Exchange
    贪心 Gym 100502E Opening Ceremony
    概率 Gym 100502D Dice Game
    判断 Gym 100502K Train Passengers
    BFS POJ 3278 Catch That Cow
    DFS POJ 2362 Square
    DFS ZOJ 1002/HDOJ 1045 Fire Net
    组合数学(全排列)+DFS CSU 1563 Lexicography
    stack UVA 442 Matrix Chain Multiplication
  • 原文地址:https://www.cnblogs.com/gergro/p/355354.html
Copyright © 2011-2022 走看看