【问题标题】:Firefox error - document.all is undefined (WebUIValidation.js)Firefox 错误 - document.all 未定义 (WebUIValidation.js)
【发布时间】:2011-06-27 13:18:37
【问题描述】:

我创建了一个简单的 ASP.Net 应用程序,其中首页接受输入,单击按钮将用户重定向到下一页。
这在所有其他浏览器(IE、Opera、Safari)中都有效,但在 Firefox 中没有发生任何事情。按钮点击不会产生任何事件,也不会发生回发。

查看 Firefox 的错误控制台向我显示了这个错误:

document.all 未定义
http://xxx/aspnet_client/system_web/2_0_50727/WebUIValidation.js
线路:30
线路:85

WebUIValidation.js中遇到此错误的函数有:

function ValidatorHookupControlID(controlID, val) {
    if (typeof(controlID) != "string") {
        return;
    }
    var ctrl = document.all[controlID];

....

function ValidatorGetValue(id) {
    var control;
    control = document.all[id];

....

请帮忙!!!

【问题讨论】:

    标签: .net asp.net


    【解决方案1】:

    尝试将其添加到您的 web.config <xhtmlConformance mode="Legacy"/> 并阅读 this blog post 以获取有关如何/何时将客户端验证器添加到页面的更多信息。

    【讨论】:

    • 感谢您的回复。我得到了解决方案。问题是因为页面上的验证控件。我将验证器的 EnableClientScript 属性设置为 false。
    • Khushboo,您应该将您的答案添加为回复并选择它作为答案。因此,下一个遇到类似问题的人知道您是如何解决的。感谢您分享您的修复!
    【解决方案2】:

    尝试更改您的代码以使用 document.getElementById 而不是 document.all,例如

    function ValidatorHookupControlID(controlID, val) {
        if (typeof(controlID) != "string") {
            return;
        }
        var ctrl = document.getElementById(controlID);
        //.....
    }
    

    还有……

    function ValidatorGetValue(id) {
        var control = document.getElementById(id);
        //.....
    }
    

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-05-23
      • 2010-09-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多