我有网站(C#,ASP.NET,.NET 4.0)并使用ASP.NET Ajax(更新面板)和jQuery Ajax。
在客户端,一切正常,没有任何错误......
在主机上发布网站后,jQuery ajax工作正常,但更新面板不起作用,使回发和页面刷新!
主机的.NET设置也是.NET 4.0。
我不知道问题出在哪里以及为什么?
答案 0 :(得分:1)
客户端的错误是:
SCRIPT5022:ASP.NET Ajax客户端框架无法加载。
SCRIPT5009:'系统'未定义
经过多次挖掘网站和更多解决方案后,我解决了这个问题:
.NET 4.0的解决方案是:
将脚本管理器的EnableCdn属性设置为true :) 像这样:
<asp:ScriptManager ID="ScriptManager1" runat="server" EnableCdn="true">
Next Solution和Better Solution是:
将此处理程序添加到您的web.config
<system.webServer>
<handlers>
<remove name="WebServiceHandlerFactory-Integrated"/>
<remove name="ScriptHandlerFactory"/>
<remove name="ScriptHandlerFactoryAppServices"/>
<remove name="ScriptResource"/>
<add name="ScriptHandlerFactory" verb="*" path="*.asmx" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptHandlerFactoryAppServices" verb="*" path="*_AppService.axd" preCondition="integratedMode" type="System.Web.Script.Services.ScriptHandlerFactory, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
<add name="ScriptResource" preCondition="integratedMode" verb="GET,HEAD" path="ScriptResource.axd" type="System.Web.Handlers.ScriptResourceHandler, System.Web.Extensions, Version=4.0.0.0, Culture=neutral, PublicKeyToken=31BF3856AD364E35"/>
</handlers>
</system.webServer>
答案 1 :(得分:0)
我建议你检查是否所有的ajax库都被复制到了发布文件夹