Validation Summary does not render correctly
Has anyone ever seen this and does anyone know how to fix it ...
The validation Summary control seems to be rendering this :
error message
<br>
error message
<div style="display: none;" id="summaryID">
</div>
Correct me if i'm wrong here but shouldn't my errors be inside that div ... hense the reason you can put a cssclass on the control server side using CssClass="whatever" ?
Or did i miss something?
EDIT :
Just to verify ... this is what i expect it to render :
<div style="display: none;" id="summaryID">
error message
<br>
error message
</div>
EDIT 2 :
Server side markup that produces this is ...
<asp:ValidationSummary ID="ui_ValidationSummar开发者_运维百科y" runat="server" />
... Loads of controls but here's an example (don'twant to over complicate things) : ...
<asp:TextBox ID="ui_txtClientDOB" runat="server" />
<asp:RangeValidator ID="ui_RangeValidator_DOB" runat="server" ControlToValidate="ui_txtClientDOB" ErrorMessage="DOB is not valid" MinimumValue="1900/01/01" Type="Date" ForeColor="Red">*</asp:RangeValidator>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server" ControlToValidate="ui_txtClientDOB" ErrorMessage="DOB is missing" ForeColor="Red">*</asp:RequiredFieldValidator>
If either validator on this textbox has reason to fail the validation the result is as discussed, an empty div tag with an error next to it.
Likely the div #summaryID is where client side validation errors are show. Use a tool like firebug to see this as you can't do a view source on javascript filled markup. Otherwise, turn off client side validation and do a postback.
Edit
My guess is that you are mixing up the error message that's displayed with the validation control itself instead of inside the validation summary. If you don't supply a text property to the validation controls it will use the error message. Try the following (take away the text property and you'll see what I mean):
<asp:ValidationSummary ID="val" runat="server" CssClass="test"
DisplayMode="List" />
<asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator1" runat="server"
ControlToValidate="TextBox1" ErrorMessage="RequiredFieldValidator" Text="*"></asp:RequiredFieldValidator>
<asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="RequiredFieldValidator2" runat="server"
ControlToValidate="TextBox2" ErrorMessage="RequiredFieldValidator" Text="*"></asp:RequiredFieldValidator>
<asp:Button ID="Button1" runat="server" Text="Button" />
精彩评论