首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >指定ValidationGroup时ValidationSummary不工作

指定ValidationGroup时ValidationSummary不工作
EN

Stack Overflow用户
提问于 2011-07-06 19:19:46
回答 1查看 25.4K关注 0票数 5

我在一个ASP.NET页面中有几个部分,需要单独验证它们。

每个部分都有自己的验证摘要部分,所以我想使用带有ValidationGroup属性的ValidationSummary标记,但它不起作用。

下面的代码可以工作,但会验证页面中的所有控件:

代码语言:javascript
复制
<asp:TextBox ID="field1" runat="server" TabIndex="1" MaxLength="20" />
<asp:RequiredFieldValidator ID="field1RequiredValidator" ControlToValidate="field1" runat="server"
Display="None" ErrorMessage="mandatory 1" />

<asp:TextBox ID="field2" runat="server" TabIndex="2" MaxLength="20" />
<asp:RequiredFieldValidator ID="field2RequiredValidator" ControlToValidate="field2" runat="server"
Display="None" ErrorMessage="mandatory 2" />

....

<asp:ValidationSummary ID="validationSummary" HeaderText="Sumary" runat="server" />

虽然以下方法不起作用(无论如何都没有验证,但在提交时,我只需转到向导中的下一页):

代码语言:javascript
复制
<asp:TextBox ID="field1" runat="server" TabIndex="1" MaxLength="20" />
<asp:RequiredFieldValidator ID="field1RequiredValidator" ControlToValidate="field1" runat="server"
Display="None" ErrorMessage="mandatory 1" ValidationGroup="xxxx" />

<asp:TextBox ID="field2" runat="server" TabIndex="2" MaxLength="20" />
<asp:RequiredFieldValidator ID="field2RequiredValidator" ControlToValidate="field2" runat="server"
Display="None" ErrorMessage="mandatory 2" ValidationGroup="xxxx" />

....

<asp:ValidationSummary ID="validationSummary" HeaderText="Sumary" runat="server" ValidationGroup="xxxx" />

这里我漏掉了什么?是否需要额外设置或其他设置?

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2011-07-06 19:23:07

ASP.NET中的默认行为是,当用户单击未指定ValidationGroup (且CausesValidation设置为true)的按钮时,将验证不属于验证组的所有验证控件。

因此,要验证特定的组,您需要设置应该导致验证的按钮的ValidationGroup属性(可能还有CausesValidation属性)。

有关详细信息和示例,请参阅MSDN documentation for Button.ValidationGroup

编辑:如果您需要验证页面上的所有组,最简单的方法当然是根本不使用验证组。但是,如果您只想验证一些(但多个)组,则可以在服务器上(在按钮的click处理程序中)执行此操作,方法是调用:

代码语言:javascript
复制
Validate("groupOne");
Validate("groupTwo");
// ...

请注意,这不会触发客户端验证。有关在单击一次按钮时触发多个验证组的讨论,请参见示例this post

编辑:我找到了描述如何为ASP.NET构建可重用的“多验证组按钮”的a blog post,并给出了代码。虽然还没试过,但看起来很有前途。

票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/6595546

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档