Ошибка выполнения Microsoft JScript: «Sys» не определен - PullRequest
16 голосов
/ 19 декабря 2009

У меня есть страница со следующим кодом:

<script type="text/javascript" language="javascript">
    /// <reference name="MicrosoftAjax.js" />

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

    function EndRequestHandler(sender, args)
    {
        ToggleTimeDiv();
    }
</script>

Когда страница загружается, я получаю следующую ошибку:

  • Ошибка времени выполнения Microsoft JScript: «Sys» не определен

Я использую Visual Studio 2008 Standard Edition. Что вызывает эту ошибку?

Ответы [ 4 ]

37 голосов
/ 19 декабря 2009

Ваш блок <script> опережает ваш ScriptManager?

6 голосов
/ 20 сентября 2011

Вы должны поместить свой код скрипта в конце вашей страницы, после всего вашего контента, но только перед конечным тегом. между конечным тегом формы и конечным тегом тела Вот код, который вы нужно, на своем законном месте:

   <html>

  ...
   </head>
   <body>
    <form id="form1" runat="server">
     ...
    </form>


    enter code here
     <script type="text/javascript" language="javascript">
  /// <reference name="MicrosoftAjax.js" />

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

  function EndRequestHandler(sender, args)
  {
      ToggleTimeDiv();
  }
  </script>




   </body>
      </html>
4 голосов
/ 15 июня 2013

У вас есть

<asp:ScriptManager ID="ScriptManager1" runat="server">
        </asp:ScriptManager>

вверху вашей страницы .. У меня была такая же проблема .. добавил это, и это работает ...

1 голос
/ 10 июля 2012

Если вы используете маршрутизацию ASP.NET, используйте эту строку в вашем global.asax

    void Application_Start(object sender, EventArgs e)
    {
       RouteTable.Routes.Ignore("{resource}.axd");
    }
...