JQuery - Object不支持属性或方法toLowerCase

时间:2017-08-03 14:27:21

标签: jquery asp.net

我一直在努力解决这个问题一个星期了。情况就是这样:
我一直致力于将SharePoint应用程序从SharePoint中移除,并将其作为自己的网站。我们的SharePoint版本是2007,我们需要升级它。所以我的老板要我把它移出去。

我已经在一个SharePoint应用程序上工作,使其成为自己的网站,它运行正常。但是这个给我带来了很多麻烦!

我每次运行程序时都会收到此错误: enter image description here

这与互联网上的任何其他内容都不一样。我在搜索引擎优化和其他许多论坛上搜索和阅读了这么多帖子,但它不一样。应用程序在运行时在jquery-1.8.2.js中的一行中断。我没写这个。我没有改变这个。当我创建一个新的ASP .Net项目时,这是在我的脚本列表中。

以下是导致错误的行:

acceptData: function( elem ) {
    var noData = elem.nodeName && jQuery.noData[ elem.nodeName.toLowerCase() ];
    // nodes accept data unless otherwise specified; rejection can be conditional
    return !noData || noData !== true && elem.getAttribute("classid") === noData;
}

我是ASP .Net的初学者,完全不知道要走哪个方向。这是我已经尝试过的:

  1. 我打开了第一个移出SharePoint的应用程序,并尝试复制我在这里所做的工作。
  2. 我检查了我的包裹,我的参考资料以及所有要检查的东西。
  3. 我尝试在Chrome上运行应用程序而不是IE。应用程序不会中断并指出导致错误的行。但是,如果我在Chrome上打开开发人员工具,我仍然会看到错误。以下是Chrome中的内容: enter image description here
  4. 同样,任何改变代码的建议都不是我想要的。这不是我的代码。我几乎可以肯定它与某些引用或我的应用程序的基本结构有关。

    如果您想了解更多信息,请询问我。我甚至不知道分享什么,让你们更容易帮助我。让我知道你想要什么信息,我会分享。

    谢谢。

    编辑1:
    console.log(elem.nodeName)结果如下:

    #document
    function(a) {
        return a.nodeName.toLowerCase()
    }
    

1 个答案:

答案 0 :(得分:1)

这是一个jQuery错误。为什么它发生似乎是由于window.nodeName被定义为此元素(它没有toLowerCase方法,因为它是一个元素),因为具有此id的元素存在。

将您的jQuery版本更改为2.02+并检查