一个页面上有2个Button要验证不同的验证控件,而且不相互干扰,比如Button1验证RequiredFieldValidator1,Button2验证RequiredFieldValidator2,现在每个Button都会验证这两个验证呢。

解决方案 »

  1.   

    RequiredFieldValidator是跟你要验证的ControlToValidate(如TextBox)联系的吧,跟button有什么关系?
    难道你在设置RequiredFieldValidator的属性的时候,有设置过它跟哪个button关联????只要你RequiredFieldValidator1和RequiredFieldValidator2针对的ControlToValidate在页面上存在
    页面提交的时候就会两个验证都进行如果你要对每个button分别进行验证,自己写代码在后台做吧
      

  2.   

    你的Button点击的时候刷新了页面,当然执行了,两个button都是这样的,这可能是你的问题所在
      

  3.   

    先把两个验证控件的Enabled属性值都设置为false,然后在相应的事件里在设置为true,如下所示:
    private void Button1_Click(object sender, System.EventArgs e)
    {
    RequiredFieldValidator1.Enabled = true;
    RequiredFieldValidator2.Enabled = false;
    }
    这样就达到了你的目的了
      

  4.   

    这样好了,
    在调用Button事件的时候对需要的控件进行验证

    private void Button1_Click(objec sender,System.EventArgs e)
    {
    //调用验证控件进行验证
           RequiredFieldValidator1.Validate()
           RequiredFieldValidator2.Validate()
           //检查是否验证成功
           if(RequiredFieldValidator1.IsValid && RequiredFieldValidator2.IsValid)
           {
               //成功则要执行的代码
           }
    }当然要注意的一点,Button的单击验证(CausesValidation)的属性要设为FALSE