Deniz Dogan
Deniz Dogan

Reputation: 26227

ASP.NET: ValidationSummary doesn't display any contents

I'm trying to figure out how the heck the validation summary control of ASP.NET (3.5 I think) works.

<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." />

It seems that no matter what I do, the validation summary remains empty (but is rendered) and the errors are only displayed at the position of each respective validator.

What am I doing wrong?

Upvotes: 1

Views: 4473

Answers (3)

Jason Berkan
Jason Berkan

Reputation: 8884

Set the ErrorMessage property on the RequiredFieldValidators, not the Text property.

<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." />

Upvotes: 2

Mitchel Sellers
Mitchel Sellers

Reputation: 63126

Text property's value is what is displayed beside the control. You need to set the ErrorMessage property of the validators to control what is shown in the summary.

Upvotes: 8

dariom
dariom

Reputation: 4583

You want to set the ErrorMessage property on your validation controls. This text will be displayed by the ValidationSummary control.

Try:

<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." />

Upvotes: 3

Related Questions