有没有人见过这个,有没有人知道如何修复它......
验证摘要控件似乎正在渲染:
error message
<br>
error message
<div style="display: none;" id="summaryID">
</div>
如果我在这里错了,请纠正我,但不应该把我的错误放在那个div里面...那么你可以使用CssClass =“what”将cssclass放在控制服务器端的原因吗?
或者我错过了什么?
编辑:
只是为了验证......这是我期望它呈现的:
<div style="display: none;" id="summaryID">
error message
<br>
error message
</div>
编辑2:
产生此标记的服务器端标记是......
<asp:ValidationSummary ID="ui_ValidationSummary" runat="server" />
... 大量的控件,但这里是一个例子(不要过于复杂的事情): ...
<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>
如果此文本框上的任何验证器都有理由未通过验证,则结果如上所述,是一个空的div标签,旁边有错误。
答案 0 :(得分:0)
可能div #summaryID是显示客户端验证错误的地方。使用像firebug这样的工具来查看这个,因为你不能在javascript填充标记上做一个视图源。否则,请关闭客户端验证并进行回发。
修改
我的猜测是,您正在混淆与验证控件本身一起显示的错误消息,而不是在验证摘要中。如果您没有向验证控件提供文本属性,它将使用错误消息。尝试以下(删除文本属性,你会明白我的意思):
<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" />