Asp.net 在Chrome&;Safari when按钮具有CausesValidation=";假;
我在Chrome&Safari中的ASP.NET 4应用程序(适用于Firefox和IE)有一些问题 我使用以下代码声明了一个按钮:Asp.net 在Chrome&;Safari when按钮具有CausesValidation=";假;,asp.net,google-chrome,safari,validation,Asp.net,Google Chrome,Safari,Validation,我在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" /> p
<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中单击该按钮时,UserNameRequired和PasswordRequired验证器将启动,即使该按钮具有CausesValidation=“false”。IE或Firefox中不会出现验证错误
如何阻止Chrome和Firefox中的验证程序启动?我刚刚在一个空页面中测试了您的代码,它在所有浏览器中都能正常工作 你可以试着用它
只需为UserNameRequired、RegularExpressionValidator1、PasswordRequired和您的登录按钮设置相同的组。事实证明,我们使用了一些javascript来阻止提交表单[0]的双击(在本例中是登录控件).我不确定这是否与您的问题有关,但发现设置了
Display=“Dynamic”
的RequiredFieldValidators
存在问题
删除它修复了我遇到的一个问题,即一些验证器在
Chrome
中无法正确显示。然而,在过去也有其他情况下,添加有助于解决问题。您是否更新了最新的asp.net ajax库?我们目前使用的是与.net Framework 4.0一起安装的标准库。很抱歉,延迟-将所有验证程序放入验证组并不能解决问题。我也有同样的问题RadioButtonList存在问题,当用户从列表中选择一个值但未单击submit按钮时,验证将触发。您找到了这个问题的根本原因了吗?@suggy1982-在我的例子中,这是因为我们正在用javascript对表单[0]进行提交。删除该代码后,浏览器之间就没有问题了。我读了你的问题——这是个奇怪的问题。我在一些地方使用向导控件,有时发现很难使用它。