0

我在启用 ASP.Net Ajax 的网站中遇到间歇性错误问题。我收到的错误是旧的忠实“Microsoft JScript 运行时错误:'Sys' 未定义”错误。谷歌搜索此错误通常会建议将正确的“httpHandlers”和“httpModules”添加到“web.Config”文件中。该项目的 web.config 文件已经包含这两个部分的以下行。见下文:

<system.web>
    <httpHandlers>
        <remove path="*.asmx" verb="*"/>
        <add path="*.asmx" verb="*" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
        <add path="*_AppService.axd" verb="*" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
        <add path="ScriptResource.axd" verb="GET,HEAD" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35" validate="false"/>
        <add path="Telerik.Web.UI.WebResource.axd" verb="*" type="Telerik.Web.UI.WebResource" validate="false"/>
        <add path="Telerik.ReportViewer.axd" verb="*" type="Telerik.ReportViewer.WebForms.HttpHandler, Telerik.ReportViewer.WebForms, Version=3.0.9.430, Culture=neutral, PublicKeyToken=a9d7983dfcc261be" validate="true"/>
        <add type="Telerik.ReportViewer.WebForms.HttpHandler, Telerik.ReportViewer.WebForms, Version=3.0.9.430, Culture=neutral, PublicKeyToken=a9d7983dfcc261be" path="Telerik.ReportViewer.axd" verb="*" validate="true"/>
    </httpHandlers>
    <httpModules>
        <add name="ScriptModule" type="System.Web.Handlers.ScriptModule, System.Web.Extensions, Version=1.0.61025.0, Culture=neutral, PublicKeyToken=31bf3856ad364e35"/>
    </httpModules>
</system.web>

该错误是间歇性的,有时在调试页面时根本不存在,而其他时候它会持续出现长达一天左右的时间?请其他人建议另一个可能需要注意的领域。

顺便说一句,我们在页面上使用 Telerik ajax 控件。我们的自定义 JavaScript 之一确实在脚本管理器之前呈现。我尝试使用“RadScriptManager1.RegisterClientScriptBlock(...)”和“ClientScript.RegisterClientScriptBlock(...)”,但似乎都在“Sys.WebForms.PageRequestManager._initialize(...)”行上方呈现脚本块.

任何帮助表示赞赏。在此先感谢,最好的问候,杜安。

4

1 回答 1

0

代替

Sys.WebForms.PageRequestManager._initialize(...)

$(document).ready(function(){
    Sys.WebForms.PageRequestManager._initialize(...)
});

(是的,jQuery)

于 2010-10-06T09:01:46.913 回答