ASP.Net WebForms requiredfieldvalidator无法在FireFox中运行?

时间:2010-04-27 16:42:31

标签: asp.net firefox validation requiredfieldvalidator

我有一个WebForms应用程序,它在下拉列表中使用字段验证程序。它适用于IE但不适用于FireFox。

这是我正在做的非常简单的事情。以下是下拉列表和验证器的设置:

<asp:DropDownList ID ="dmbFileActNo" runat="server" CssClass="DROPDOWN_MEDIUM" AutoPostBack="True"></asp:DropDownList>

<asp:requiredfieldvalidator EnableClientScript="true" id="rfvFileActNo" Display="None" ControlToValidate="dmbFileActNo" Runat="server"  InitialValue="-1"></asp:requiredfieldvalidator>

我在网络服务器上运行ASP.Net 2.0。在FireFox浏览器上启用了Javascript - 这个问题发生在我测试的所有FF浏览器上,在多台日常机器上,所以我不认为这是由于锁定安装。

4 个答案:

答案 0 :(得分:2)

客户端验证可能无法在所有浏览器和所有方案中使用。确保您始终在服务器上进行验证非常重要。

您可能还想查看验证控件上的DetermineRenderUpLevel()方法在FF中返回的内容。在幕后,它会检查以下内容是否正确:

  • 浏览器有客户端脚本 启用。
  • 的W3CDomVersion属性 HttpBrowserCapabilitiesBase对象 存储在 HttpRequest.Browser属性是1或 后面。
  • 的EcmaScriptVersion属性 HttpBrowserCapabilitiesBase对象 存储在 HttpRequest.Browser属性为1.2 或以后。

答案 1 :(得分:2)

我通过修改web.config来实现这一点。事实证明,有人<xhtmlConformance mode="Legacy"/>在那里,这是一个较旧的设置(当前默认为“过渡”)。感谢大家的帮助。

答案 2 :(得分:1)

有时ASP.net会向不同的浏览器发送不同的HTML / javascript。检查您的browsercap文件/设置

答案 3 :(得分:1)

我遇到了这个问题,这是使用点字符“。”的问题。在控件的id属性中