1

当 JSPX 编译时,它会自动添加<?xml version="1.0" encoding="UTF-8"?>到文件顶部,这会导致一些 JavaScript 代码无法在 Internet Explorer 6 上运行。

如何避免它添加<?xml version="1.0" encoding="UTF-8"?>到输出文件中?

4

3 回答 3

1

您可以使用

<jsp:output omit-xml-declaration="yes" />
于 2011-08-12T22:40:49.307 回答
0

你不能。这就是 JSPX 中的“X”代表的地方。XML 格式的 JSP。你基本上有两个选择:

  1. 使用 JSP 而不是 JSPX。通过这种方式,您可以输出严格的 HTML,而不是被迫使用 XML/XHTML(推荐,除非您确实需要 JSPX 提供的优于 JSP 的优势)。

  2. 修复 JavaScript 代码,使其不会出错。您可以通过其从 JSPX 文件中移出到您自己的.js文件中来执行此操作,您只需将其包含<script src="file.js"></script><head>(推荐)中,或者将所有特殊/保留的 XML 字符(如等)替换&为 XML 实体&amp;将所有块内的 JS 代码<![CDATA[ ]]>

于 2010-09-11T02:06:38.617 回答
0

XML 声明不会自动导致 JavaScript 中断。相反,您拥有的 JavaScript 依赖于 HTML 的特性,而这些特性在 XML 中是不成立的。这种假设的一个具体示例将依赖于 HTML 中(元素)名称的不区分大小写行为,而不是 XML 中的区分大小写行为。

于 2010-09-11T04:23:59.250 回答