XHTML与<的不兼容性ASP:菜单>使用content-type =“application / xhtml + xml”的组件

时间:2011-05-25 18:20:37

标签: javascript asp.net xhtml menu content-type

我正在使用ASP.NET 4.0并测试ASP.NET XHTML与某些组件的兼容性,并且已经发现服务器控件< ASP:菜单>与XHTML无法正常工作。

我希望浏览器将页面视为XHTML而不是HTML文档(html / text content-type的默认值)。由于只有最新的浏览器才能识别此模式(仅在版本9之后的IE),我使用内容类型协商(请参阅:http://msdn.microsoft.com/en-us/library/aa479043.aspx#aspnetusstan_topic8)在浏览器支持时正确处理。

    void Application_PreSendRequestHeaders(object sender, EventArgs e)
    {
        if (Array.IndexOf(Request.AcceptTypes, "application/xhtml+xml") > -1)
        {
            Response.ContentType = "application/xhtml+xml";
        }
    }

也就是说,我的应用程序的行为相应,但< ASP:菜单>组件,无法正确呈现。

我发现问题出在用于处理菜单组件的WebResource.axd生成的javascript中。

有人遇到类似的问题,并想出了一些解决方法吗?

提前致谢。

1 个答案:

答案 0 :(得分:0)

问题本身没有解决。为了允许正确呈现网站,我只是继续将其页面作为“html / text”提供,删除了内容类型的协商。