'sys'是未定义的javascript错误

时间:2009-10-16 10:47:02

标签: javascript asp.net ajax

我收到以下错误:

  

Microsoft JScript运行时错误:'Sys'   未定义

尝试执行时:

<head id="Head1" runat="server">
    <title>Untitled Page</title>
    <script language="javascript" type="text/javascript">

        //ERROR IN THIS LINE!!!
        Sys.WebForms.PageRequestManager.getInstance().add_endRequest(onUpdated());


          function onUpdated() {
                // get the update progress div
                var pnlPopup = $get("div2"); 
                // make it invisible

            }

    </script>
</head>

5 个答案:

答案 0 :(得分:6)

确保页面上有Scriptmanager,脚本位于scriptmanager下方。也许尝试将您的脚本标记放入正文中,看看会发生什么。

我不知道你怎么能解决它不在体内,但也许有一个来自Sys的回调加载

您不需要括号来判断需要哪个功能:

Sys.WebForms.PageRequestManager.getInstance().add_endRequest(onUpdated);

答案 1 :(得分:2)

如果这是您的完整代码,那么问题是不包含Microsoft AJAX库。如果它不是您的完整代码,那么您需要发布更多内容,因为它有点难以超出未包含库的事实。在您的文件中的某个位置 - 在您遇到问题的行之前,您需要使用javascript包括:

<script type="text/javascript" src="/scripts/MicrosoftAjax.js" />

以及其他一些人。

注意:我在谈论生成的源代码。显示更完整的标记也可能就足够了。

答案 2 :(得分:0)

我在这里讨论的时间有点晚了,但一个简单的解决方案是在Visual Studio中创建一个“支持ASP.NET AJAX的网站”,然后将该网站的web.config与现有网站合并。

通过这种方式,您可以获得所需的所有配置,而无需仔细阅读大量文档。速度至关重要,所有这些:)

答案 3 :(得分:0)

您可以通过将EnableCDN属性设置为&#34; true&#34; .refer this link

来解决此问题

答案 4 :(得分:0)

我有同样的问题,经过所有调查结果后我发现所需的脚本文件(“MicrosoftAjax.js”,“WebForms.js”,“jquery”,“bootstrap”等等)未正确加载导致我3错误“Sys'未定义”,“webform_docallback未定义”和“webform_initcallback'未定义”,我的实际问题是我参考了这些文件,其中没有包含在我的项目中,我的坏我没有注意到它,我在我真正发现我的js文件没有被包含之前,我已经尝试了所有可能的互联网解决方案,这就是它没有正确加载的原因。

希望这会有所帮助..