2010-08-18 77 views
4

我有两个按钮和两个单独的验证组为每个按钮。我保留EnableClientScript=false在文本框的每个必填字段验证程序上。我有一个像下面page.Isvalid always return false?

void submitButton_Click(object sender, EventArgs e) 
{ 
    this.Page.Validate("LoginAccountGroup"); 

    if (this.Page.IsValid) 
    { 
    } 
} 

void saveButton_Click(object sender, EventArgs e) 
{ 
    this.Page.Validate("CreateAccountGroup"); 

    if (Page.IsValid) 
    { 
    } 
} 

我的问题是Page.Isvalid始终在C#代码返回false C#代码。如何使它工作

+0

你有与两个验证抛开其他控件? ,因为当所有验证器都为true时,page.validate语句返回true。 – Dave 2014-01-17 01:14:20

+0

您不能直接在标记(.aspx页面)中的按钮上设置ValidationGroup吗? – 2014-02-04 15:38:08

+0

这是http://stackoverflow.com/questions/3500656/page-isvalid-always-return-false的副本 – kevinpo 2014-05-29 12:54:31

回答

0

尝试这个

protected bool IsGroupValid(string sValidationGroup) 
{ 
    Page.Validate(sValidationGroup); 
    foreach (BaseValidator validator in Page.GetValidators(sValidationGroup)) 
    { 
     if (!validator.IsValid) 
     { 
      return false; 
     } 
    } 
    return true; 
}