ASP.NET-多个验证摘要
场景:我试图在一个页面上插入一个团队(由多人组成)。我有一个web用户控件来插入每个人,当一个团队有多个人时,会同时显示多个web用户控件 每个用户都有一个ValidationSummary和几个验证器(所有验证器都分组到同一个验证组,示例person1 web用户控件在反验证摘要和每个验证器上的验证组设置为“valGroup_person1”) 问题是,当验证发生时,所有错误都被分组并显示在所有web用户控件中,使得每个web用户控件都显示一个很长的错误列表。预期的结果是单个错误列表ASP.NET-多个验证摘要,asp.net,validation,Asp.net,Validation,场景:我试图在一个页面上插入一个团队(由多人组成)。我有一个web用户控件来插入每个人,当一个团队有多个人时,会同时显示多个web用户控件 每个用户都有一个ValidationSummary和几个验证器(所有验证器都分组到同一个验证组,示例person1 web用户控件在反验证摘要和每个验证器上的验证组设置为“valGroup_person1”) 问题是,当验证发生时,所有错误都被分组并显示在所有web用户控件中,使得每个web用户控件都显示一个很长的错误列表。预期的结果是单个错误列表 有没有一
有没有一种方法可以让ValidationSummary以这种方式执行?如果您使用的是asp.net 2.0,那么您必须使用validation group(验证组),这将起作用 请参见下面的示例,它将起作用
1.
2.
如果您使用的是asp.net 2.0,则必须使用验证组,这将起作用 请参见下面的示例,它将起作用
1.
2.
您必须在每个控件上为验证组分别命名,以消除它们之间的歧义。例如,在用户控件的页面init中:
Private Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init
Dim uniqueGroupName = Guid.NewGuid.ToString
valSummary.ValidationGroup = uniqueGroupName
txtFirstName.ValidationGroup = uniqueGroupName
txtLastName.ValidationGroup = uniqueGroupName
btnFind.ValidationGroup = uniqueGroupName
End Sub
(对于组中的每个控件,以编程方式为其指定一个验证组)
如果您正在进行服务器端验证,则应仅为组调用验证,例如
Page.Validate(valSummary.ValidationGroup)
If Not Page.IsValid then Exit Sub
...
您必须通过在每个控件上为验证组指定单独的名称来消除它们之间的歧义。例如,在用户控件的页面init中:
Private Sub Page_Init(ByVal sender As Object, ByVal e As System.EventArgs) Handles Me.Init
Dim uniqueGroupName = Guid.NewGuid.ToString
valSummary.ValidationGroup = uniqueGroupName
txtFirstName.ValidationGroup = uniqueGroupName
txtLastName.ValidationGroup = uniqueGroupName
btnFind.ValidationGroup = uniqueGroupName
End Sub
(对于组中的每个控件,以编程方式为其指定一个验证组)
如果您正在进行服务器端验证,则应仅为组调用验证,例如
Page.Validate(valSummary.ValidationGroup)
If Not Page.IsValid then Exit Sub
...
然后,您必须从服务器端进行检查,或者需要转移到另一个验证场作业。内置验证不支持此操作。请参阅下面的链接,您需要在按钮中单击事件页面中的以下内容。验证(“validationGroup”),然后您必须从服务器端进行检查,或者您需要移动到另一个验证Farmwork。内置验证不支持此操作。请参阅下面的链接,您需要在按钮中单击事件页面中的以下内容。验证(“验证组”)