Jquery .NET ValidationSummary控件未在UpdatePanel内格式化
我在ASP.NET页面的更新面板中有一些验证控件:Jquery .NET ValidationSummary控件未在UpdatePanel内格式化,jquery,css,asp.net,ajax,validation,Jquery,Css,Asp.net,Ajax,Validation,我在ASP.NET页面的更新面板中有一些验证控件: <asp:UpdatePanel ID="UP1" runat="server"> <Triggers> </Triggers> <ContentTemplate> <script type="text/javascript"> funct
<asp:UpdatePanel ID="UP1" runat="server">
<Triggers>
</Triggers>
<ContentTemplate>
<script type="text/javascript">
function ValidatorUpdateDisplay(val) {
if (typeof (val.display) == "string") {
if (val.display == "None") {
return;
}
if (val.display == "Dynamic") {
val.style.display = val.isvalid ? "none" : "inline";
return;
}
}
val.style.visibility = val.isvalid ? "hidden" : "visible";
if (val.isvalid) {
document.getElementById(val.controltovalidate).style.border = '1px solid #808080';
}
else {
document.getElementById(val.controltovalidate).style.border = '1px solid red';
}
}
</script>
<asp:Label ID="Label1" runat="server" AssociatedControlID="txtName" CssClass="label" Text="Your Name: (required)" /><asp:TextBox ID="txtName" CssClass="singlelineTxt" CausesValidation="true" ValidationGroup="ContactForm" runat="server" /><br />
<asp:Label ID="Label2" runat="server" AssociatedControlID="txtCompany" CssClass="label" Text="Company: (optional)" /><asp:TextBox ID="txtCompany" CssClass="singlelineTxt" runat="server" /><br/>
<asp:Label ID="Label3" runat="server" AssociatedControlID="txtEmail" CssClass="label" Text="Your Email: (required)" /><asp:TextBox ID="txtEmail" CssClass="singlelineTxt" CausesValidation="true" ValidationGroup="ContactForm" runat="server" /><br />
<asp:Label ID="Label4" runat="server" AssociatedControlID="txtSubject" CssClass="label" Text="Subject: (required)" /><asp:TextBox ID="txtSubject" CssClass="singlelineTxt" CausesValidation="true" ValidationGroup="ContactForm" runat="server"/><br />
<div id="TextArea"><asp:Label ID="Label5" runat="server" AssociatedControlID="txtMessage" CssClass="label" Text="Message: (required)" /><asp:TextBox ID="txtMessage" CssClass="multilineTxt" CausesValidation="true" ValidationGroup="ContactForm" TextMode="MultiLine" Wrap="true" runat="server" /></div><br />
<div id="cbCaptcha" style="display: none;"><!-- for callback recaptcha reload --></div>
<cc1:Recaptcha ID="Recaptcha1" CssClass="captcha" Theme="Clean" runat="server" />
<asp:Button ID="btnSubmit" CausesValidation="true" ValidationGroup="ContactForm" CssClass="button" runat="server" text="Submit" OnClick="btnSubmit_Click"/><br /><br />
<asp:ValidationSummary ID="ValSum1" CssClass="error" ForeColor="" DisplayMode="SingleParagraph" runat="server" />
<asp:Label ID="lblMessage" runat="server" CssClass="messageSuccess" Visible="false" Text="SUCCESS" />
<asp:RequiredFieldValidator ID="reqName" ErrorMessage="Name is required." ControlToValidate="txtName" runat="server" ValidationGroup="ContactForm" />
<asp:RequiredFieldValidator ID="reqEmail" ErrorMessage="Email is required." ControlToValidate="txtEmail" runat="server" ValidationGroup="ContactForm" />
<asp:RequiredFieldValidator ID="reqSubj" ErrorMessage="Subject is required." ControlToValidate="txtSubject" runat="server" ValidationGroup="ContactForm" />
<asp:RequiredFieldValidator ID="reqMsg" ErrorMessage="Message is required." ControlToValidate="txtMessage" runat="server" ValidationGroup="ContactForm" />
</ContentTemplate>
</asp:UpdatePanel>
然而,无论我试图做什么,我都无法得到这个验证摘要来反映任何类型的样式。我已经围绕AJAX和更新面板如何工作做了几个小时的研究,现在希望找到一些可以暗示问题根源的东西,重新访问、修改并修补其他样式表。。。没事儿
有人知道什么会阻止具有CssClass属性的ASP.NET控件使用指定的CssClass进行呈现吗 我想还有其他一些事情正在停止你的
CSS
风格。因为它在我这边很管用
我还发现,在你的更新面板里<缺少代码>脚本管理器。请添加如下内容
<asp:ScriptManager ID="sc1" runat="server"></asp:ScriptManager>
在使用asp验证摘要元素时,我认为生成的HTML不包括在其class语句中指定的任何其他类。我通过在CSS样式表中添加一个条目来解决这个问题:
.validation-summary-errors ul li {
color: red !
}
你想要什么类型的样式,你试过给!重要信息
属性?问题中指出了我想要的样式的确切类型。添加!重要的事什么也做不了。没有应用的不是单个属性,而是CSS类中的所有属性。它似乎使用的唯一样式是顶级HTML字体颜色和字体大小。它甚至不会呈现为项目符号列表,即使我告诉它。我必须与更新面板有关。当我将验证控件移到更新面板外时,它的样式正确。你能粘贴你的更新面板
代码吗?删除更新面板内的javascript代码并检查我没有缺少脚本管理器,我只是没有粘贴我问题中的整个.aspx页面。@takiMartillo:但验证工作在我这边进行,你能试试新的新页面吗。?
.validation-summary-errors ul li {
color: red !
}