ASP.NET:ValidationSummary不显示任何内容

时间:2009-10-29 16:59:06

标签: asp.net validation

我正在试图弄清楚ASP.NET(我认为3.5)的验证摘要控制是如何工作的。

<asp:ValidationSummary ID="vldSummary" runat="server" DisplayMode="BulletList" 
  CssClass="error" EnableClientScript="true" />
<asp:RequiredFieldValidator ID="vldSubject" ControlToValidate="txtSubject"
  EnableClientScript="false" Text="You must enter a subject." runat="server" />
<asp:RequiredFieldValidator ID="vldMessage" ControlToValidate="txtMessage"
  EnableClientScript="false" runat="server" Text="You must enter a message." />

似乎无论我做什么,验证摘要仍为空(但 呈现),错误仅显示在每个相应验证器的位置。

我做错了什么?

3 个答案:

答案 0 :(得分:7)

Text属性的值是控件旁边显示的值。您需要设置验证器的ErrorMessage属性来控制摘要中显示的内容。

答案 1 :(得分:2)

您想在验证控件上设置ErrorMessage属性。该文本将由ValidationSummary控件显示。

尝试:

<asp:ValidationSummary ID="vldSummary" runat="server" DisplayMode="BulletList" CssClass="error" EnableClientScript="true" />
<asp:RequiredFieldValidator ID="vldSubject" ControlToValidate="txtSubject" EnableClientScript="false" ErrorMessage="You must enter a subject." runat="server" />
<asp:RequiredFieldValidator ID="vldMessage" ControlToValidate="txtMessage" EnableClientScript="false" runat="server" ErrorMessage="You must enter a message." />

答案 2 :(得分:1)

在RequiredFieldValidators上设置ErrorMessage属性,而不是Text属性。

<asp:RequiredFieldValidator ID="vldSubject" ControlToValidate="txtSubject" EnableClientScript="false" ErrorMessage="You must enter a subject." runat="server" />
<asp:RequiredFieldValidator ID="vldMessage" ControlToValidate="txtMessage"  EnableClientScript="false" runat="server" ErrorMessage="You must enter a message." />