添加脚本管理器时验证失败
本文关键字:验证 失败 管理器 脚本 添加 | 更新日期: 2023-09-27 18:13:49
我在主页上设置了几个电子邮件订阅控件。
Web-form工作正常,但如果没有输入电子邮件地址,则不会触发验证。
<asp:UpdatePanel ID="updSubscribe" runat="server" UpdateMode="Conditional">
<ContentTemplate>
<asp:Panel ID="pnlSubscribe" runat="server" >
<asp:TextBox ID="txtEmail" CssClass="form-control form-subscribe-input" runat="server" placeholder="YOUR EMAIL"></asp:TextBox>
<asp:RequiredFieldValidator ID="rfvEmailSub" runat="server" ErrorMessage="*" ControlToValidate="txtEmail" ValidationGroup="SubEmail" ></asp:RequiredFieldValidator>
<asp:RegularExpressionValidator ID="revEmailSub" runat="server" ErrorMessage="*" ControlToValidate="txtEmail" ValidationExpression="'w+([-+.']'w+)*@'w+([-.]'w+)*'.'w+([-.]'w+)*" ValidationGroup="SubEmail" ></asp:RegularExpressionValidator>
<span class="input-group-btn">
<asp:Button ID="btnSubscribe" CssClass="btn btn-maroon" runat="server" ValidationGroup="SubEmail" Text="Subscribe" onclick="btnSubscribe_Click" />
</span>
</asp:Panel>
<asp:Panel ID="pnlSubscribeMSG" CssClass="pnlSubscribeMSG" runat="server" >
<asp:Label ID="lblSubscribeMSG" runat="server" Text="">
</asp:Label>
</asp:Panel>
</ContentTemplate>
</asp:UpdatePanel>
我不知道代码出了什么问题。
:
在进一步的故障排除中,我注意到相同的代码可以在没有母版页的页面上进行验证。
不知道到底发生了什么
问题是由于script manager
,因为它不能正确加载脚本文件,导致验证失败,花了几个小时后,我很幸运地找到了它。
所以不添加脚本管理器
<asp:ScriptManager runat="server"></asp:ScriptManager>
i add it as
<asp:ScriptManager runat="server">
<Scripts>
<asp:ScriptReference Name="jquery" />
<asp:ScriptReference Name="WebForms.js" Assembly="System.Web" />
<asp:ScriptReference Name="WebUIValidation.js" Assembly="System.Web" />
</Scripts>
</asp:ScriptManager>
解决方案来源链接