【问题标题】:ASP.net Ajax Partial Rendering using UpdatePanel not working in WebKit browsers使用 UpdatePanel 的 ASP.net Ajax 部分渲染在 WebKit 浏览器中不起作用
【发布时间】:2011-06-24 03:43:13
【问题描述】:

我是一个使用 ASP.NET(4) 的大型在线系统的开发团队的一员。

对于 Webkit 浏览器,Asp.net Ajax 完全崩溃了,当我们应该只对 UpdatePanel 进行部分回发时,我们得到了整页回发。

我开始相信这与我的应用程序配置有关,主要有以下原因。

  • 如果我将启用 ajax 的控件移动到新项目中,它们将在所有浏览器(包括 Webkit)上按预期工作。
  • 我创建了一个静态 .aspx 文件,其中只有一个 UpdatePanel、ScriptManager 和一个使文字在点击时可见的按钮。
  • 我没有从任何浏览器收到任何 Javascript 错误,并且我在 Firebug 和 Chrome 开发工具中都看到了对 asp.net-ajax (ScriptResource.axd) 的 http 请求
  • 我尝试了 this highly referenced thread 的 ye'old safari fix

编辑: 经过更多的测试和 http 嗅探,我注意到测试应用程序和实际应用程序之间的主要区别。测试应用程序生成 2 个额外的 .axd 文件,这些文件不是从实际应用程序生成的。这些 WebResource.axd 似乎包含与异步回发相关的数据。 但这仅适用于 Webkit 浏览器。 WebResource.axd 文件是为 Firefox 生成的,我可以在 firebug 中看到它们


我向社区提出的问题是关于可能导致此问题的原因的任何想法或建议,以及我是否正确地假设问题可能出在服务器端

感谢您的帮助

【问题讨论】:

    标签: .net-4.0 asp.net-ajax webkit updatepanel webresource.axd


    【解决方案1】:

    问题是由于一个已弃用的配置文件用于限制 bots/spider/crawlers 接收的内容,由于我们可爱的内部 CMS 导致错误加载

    简而言之,如果您遇到与我的情况类似的行为,请检查您的或配置

    【讨论】:

      【解决方案2】:

      我遇到了类似的问题,但是我的问题出在所有浏览器上,而不仅仅是 webkit。我最终浏览并撕毁了 web.config 文件,发现一行:<xhtmlConformance mode="Legacy"> 正在阻止 webresource.axd 正常工作。解决方法是简单地从我的 web.config 文件中删除该行。

      有关 xhtmlConformance 的更多信息,请访问http://technet.microsoft.com/en-us/librarY/ms228268(v=vs.85).aspx

      如果您一直滚动到底部,您会注意到它明确指出它会导致 webresource.axd 和 scriptresource.axd 出现问题。

      【讨论】:

        猜你喜欢
        • 2020-07-28
        • 2013-10-27
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多