0

我的表单上有几个验证器,有 2 个不同的ValidationGroups

在提交表单之前,我只需要检查ValidationGroup="main"控件是否有效我尝试了以下操作:

Page.Validate("main");
if (Page.IsValid) 
//do something

它不断返回false,我快疯了。

在检查确切地查看哪个验证器失败后,它看起来像是阻塞在不同的验证器上ValidationGroup

我如何确保它只验证“主”组?

这是我的完整提交代码:(也许我正在检查失败的验证器是否错误?)但无论哪种方式,我的 page.isvalid 都是错误的 :(

Page.Validate("main");
            if ((Page.IsValid) && (user.userRole.Contains("9")))
                btnSubmit.Visible = true;
            else
            {
                foreach (BaseValidator valControl in Page.Validators)
                {
                    WebControl assControl = Page.FindControl(valControl.ControlToValidate) as WebControl;
                    if (valControl.IsValid)
                    {
                        //do something.

                    }
                    else
                    {
                        //do something.
                        lblMessage.Text = valControl.ToString();
                    }

                } 
                btnSubmit.Visible = false;
            }
4

1 回答 1

0

请通读。它指出

Validate 方法验证指定的验证组。在对验证组调用 Validate 方法后,仅当指定的验证组和导致页面发布到服务器的控件的验证组都有效时,IsValid 方法才会返回 true。

于 2013-03-20T15:41:07.590 回答