【问题标题】:ASP.Net WebForms requiredfieldvalidator not working in FireFox?ASP.Net WebForms requiredfieldvalidator 在 FireFox 中不起作用?
【发布时间】:2010-04-27 16:42:31
【问题描述】:

我有一个 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>

我在 Web 服务器上运行 ASP.Net 2.0。在 FireFox 浏览器上启用了 Javascript——这个问题发生在我测试过的所有 FF 浏览器上,在多台日常机器上,所以我不相信这是由于安装锁定造成的。

【问题讨论】:

    标签: asp.net firefox validation requiredfieldvalidator


    【解决方案1】:

    客户端验证可能不适用于所有浏览器和所有场景。请务必确保始终在服务器上进行验证。

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

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

    【讨论】:

      【解决方案2】:

      我通过修改 web.config 得到了这个工作。事实证明,有人在那里有&lt;xhtmlConformance mode="Legacy"/&gt;,这是一个较旧的设置(当前默认设置为“过渡”)。感谢大家的帮助。

      【讨论】:

        【解决方案3】:

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

        【讨论】:

          【解决方案4】:

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

          【讨论】:

            猜你喜欢
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            • 2014-09-04
            • 2010-11-12
            • 1970-01-01
            • 1970-01-01
            • 1970-01-01
            相关资源
            最近更新 更多