2

<div id="adiv"></div>将在 JSPX 中以某种方式被翻译成<div id="adiv" />. 我让它工作的方式是在<div id="adiv"><!-- --></div>. 我不明白为什么会这样,有没有更好的方法来解决这个问题?

4

1 回答 1

9

这是由JSP 规范

JSP.6.2.3 语义模型

...

为了清楚地解释空格的处理,我们遵循 XSLT 规范的结构。处理 JSP 文档的第一步是识别文档的节点。然后,从文档中删除所有只有空白的文本节点;唯一的例外是 jsp:text 元素中的节点,它们是逐字保留的。生成的节点将按照以下部分中的说明进行解释。模板数据要么直接传递给响应,要么通过(标准或自定义)操作进行调解。

理论上,如果您使用 XHTML doctype 在客户端显示文档而不是 HTML doctype,应该不会有什么害处。然而,即使是 XHTML 规范也要求某些元素不能自闭合。另一种解决方法是使用<jsp:text />而不是评论。

<div id="adiv"><jsp:text /></div>

然而,JSP(X) 是一种旧的视图技术。它的继任者Facelets在这方面做得更好。

也可以看看:

于 2012-01-13T16:47:02.610 回答