【发布时间】:2010-10-08 06:28:00
【问题描述】:
我在 Chrome 和 Safari 中的 ASP.NET 4 应用程序遇到了一些问题(适用于 Firefox 和 IE)。
我有一个使用以下代码声明的按钮:
<asp:Button ID="btnEOI1" runat="server" CssClass="buttonCSS" Text="Lodge an Expression of Interest"
OnClick="btnEOI_Click" CausesValidation="False" />
在代码隐藏文件中,我有以下代码:
protected void btnEOI_Click(object sender, EventArgs e)
{
Response.Redirect("Default.aspx", true);
}
页面上还有一个 LoginControl,它有两个RequiredFieldValidator 和一个RegularExpressionValidator:
<asp:requiredfieldvalidator id="UserNameRequired" runat="server" ControlToValidate="UserName"
ErrorMessage="Please enter your User Name." SetFocusOnError="true" Display="None">
</asp:requiredfieldvalidator>
<asp:RegularExpressionValidator runat="server" id="RegularExpressionValidator1"
ControlToValidate="UserName"
ErrorMessage="Please enter your User Name without spaces." ValidationExpression="[\S]+"
Display="None" SetFocusOnError="true" >
</asp:RegularExpressionValidator>
<asp:requiredfieldvalidator id="PasswordRequired" runat="server" ControlToValidate="Password"
ErrorMessage="Please enter your Password." SetFocusOnError="true" Display="None">
</asp:requiredfieldvalidator>
当我在 Chrome 和 Safari 中单击该按钮时,即使该按钮具有 CausesValidation="false",UserNameRequired 和 PasswordRequired 验证器也会触发。在 IE 或 Firefox 中不会出现验证错误。
如何阻止验证器在 Chrome 和 Firefox 中触发?
【问题讨论】:
-
你有更新到最新的 asp.net ajax 库吗?
-
我们目前使用随 .NET Framework 4.0 安装的标准库。
标签: asp.net google-chrome safari validation