zoukankan      html  css  js  c++  java
  • 让验证控件进行分组验证

    验证控件分组验证

    关键字:

    Page_ClientValidate,CausesValidation,ValidationGroup

    使用描述

      一个新建的页面,可以新建三个数据对象A,B,C;每个数据对象有一些字段;现有2种组合:(1)A+B+C;(2)A;具体用哪种组合由页面的DropDownList控件的选择决定:只新建A时,将B和C所在div隐藏。

    现在问题来了:隐藏B和C数据对象,相应的数据验证控件如:RequiredFieldValidator提示不能为空。

    解决办法是:将验证控件进行分组。

    大概实现过程如下

    1,给验证控件添加属性:ValidationGroup=”vgA”(组名随便写)

    2,修改保存按钮的属性:CausesValidation=false

    3, 给保存按钮添加OnClientClick= ValidateByGruop()

      代码如下:

       function  ValidateByGruop ()

        {

         var retval=false ;

         var val = $('#<%=下拉列表控件ID.ClientID %> option:selected').val();

         if(val == 1)

         {

              //只验证交采必须项

              retval= Page_ClientValidate("mustValidate");

         }

         else  

         {

             //验证所有项

              retval= Page_ClientValidate();

         }

         return retval ;

    }

    4,如果要使用 ValidationSummary 控件来显示汇总的验证信息,设置其ValidationGroup=”组名”即可

    补充说明;

    1,Page_ClientValidate方法

    Page_ClientValidate(validationGroup)

    参数为ValidationGroup属性的值。没有指定参数的情况下表示触发页面所有的Validator控件。

    返回值是布尔值(true:验证通过, false:验证失败)。

    2,在一个含有RequiredFieldValidator控件的页面上,RequiredFieldValidator控件发送到客户端后生成一些javascript函数,CausesValidation="True"的Button只比CausesValidation="False"的Button多了一些javascript代码

    参考博客:http://www.cnblogs.com/kkding/archive/2005/07/11/DataValidator.html

  • 相关阅读:
    网络学习笔记
    zabbix4.2学习笔记系列
    ansible2.7学习笔记系列
    记一次磁盘UUID不能识别故障处理
    白话ansible-runner--1.环境搭建
    kubernetes的思考
    计算机网络原理精讲第六章--应用层
    计算机网络原理精讲第五章--传输层
    centos7下LVM挂载和扩容
    多线程下载命令--axel
  • 原文地址:https://www.cnblogs.com/webJingGao/p/2068816.html
Copyright © 2011-2022 走看看