zoukankan      html  css  js  c++  java
  • 12 验证控件的共性

    • 页面中的IsValid属性用来判断页面中的所有Validator是否都校验通过,中有都检验通过才为True,即使页面中的Validator服务端校验报错(如禁用JS,跳过客户端校验),在服务端方法中的业务代码(比如按钮的click)也会被执行,因此如果代码在数据校验不通过的不能执行就需要判断IsValid的值。
    • 所有验证控件都有Display属性,用来决定如何显示错误信息。有三个值:

              Static: 没有错误信息的时候,控件的Visiblity样式为Hidden来实现隐藏

              Dynamic:没有错误信息的时候,控件的display样式为none来实现隐藏。

             None: 不显示任何信息,用来配合ValidationSummary的

             前两者的区别是visiblity:hidden隐藏控件仍然会占用空间,而display:none则不会占用空间。

            比如一个日期控件后放了不能为空的验证控件和比较验证控件,如果不能为空的验证控件的display为static,则当

    输入了一个信息后但不能满足比较验证的条件,不能为空的验证所占用的空间显示空白,但比较验证的控件就会显示出错信息,这样就会发现比较验证信息和它验证的控件离的有点远,如果把不能为空的验证控件的 display设置成 dynamic的话,就会发现比较验证控件提示信息会自动向要验证的控件靠拢。

    • 几乎所有控件都有ControlToValidate,Text属性,所有的控件几乎都要在客户端和服务端进行校验。
    • 如果在一个页面中同时放置注册和登录表单,那么他们的验证就会同时进行,这样即使登录,也会验证注册的东西,我们可以使用验证组来解决这个问题,将同一组的控件(表单、提交按钮、Validator等)的ValidationGroup设为相同的值就可以了,这样的话当点击button提交表单时就只会验证和它ValidationGroup相同名字的控件。
    • 如果将按钮控件(button,imagebutton,linkbutton)的CausesValidation属性设置为false,则这个按钮的点击不触发校验。  比如:在登录页面中有个连接按钮是注册用的,当点击“注册”按钮时并不许去验证用户名等信息,所以只要设置“注册”按钮的CausesValidation属性为false就可以了。
  • 相关阅读:
    导入模块
    Windows x86-64下python的三个版本
    ubuntu 16.04 添加网卡
    重启rsyncd
    docker时区
    git回滚
    impdp and docker install oracleXE
    Oracle 把一个用户所有表的读权限授予另一个用户
    zabbix web监控
    WebStorm license server
  • 原文地址:https://www.cnblogs.com/yagzh2000/p/3129546.html
Copyright © 2011-2022 走看看