我有点困惑。我在服务器上将内容类型切换为 application/xhtml+xml ,因为我使用的是 XHTML + 一些额外的属性(使用 <!ATTLIST>
设置)。自从我这样做之后,一切都乱了套。
例如,我有一个自动完成框,可以从我的服务器加载数据。发出 AJAX 请求时服务器的响应是 application/json 内容类型。当后者包含一个 & 符号时,我的浏览器会喊 An invalid or illegal string was specified" code: "12
。当我将页面的内容类型恢复为 text/html 时,根本没有错误。我知道“&”在 XHTML 中的表示方式与在 HTML 中的表示方式不同,但响应的内容类型是 application/json,那么为什么 jQuery 尝试将其解析为 xhtml?
我的代码中还有其他类似的错误(所有 jQuery/javascript 相关)。
我需要做什么才能避免这些错误?
最佳答案
可能 jquery 使用以 JSON 形式发送的数据,并使用诸如innerHTML之类的东西注入(inject)到 DOM 中。作为 XML 的页面要求 innerHTML 提供的数据也必须符合 XML。
关于jQuery XHTML 合规性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7045253/