4

有没有一种很好的方法来修剪 JSP 生成的空白而不使用以下技术:

  • trimSpaces jasper 指令:可能会通过占用您想要的重要空间来破坏您的布局
  • 你想用JSP 注释修剪周围的区域,注释掉空格。这使得 JSP 更难编辑并且看起来很糟糕

我想知道是否有人知道有选择地修剪 JSP 中的空格的更好方法

编辑:我现在要做的就是把我所有的标签都放在一个这样的地方:

<c:forEach var="date" items="${model.list}"><%--
--%><c:set var="dateStr"><ct:dateFormat date="${date.startDate}"/></c:set><%--
--%><option value="${dateStr}">${dateStr}</option><%--
--%></c:forEach>
4

4 回答 4

2

你在这里处理的是最不邪恶的选择。我会使用 jasper trimSpaces指令,如果您的布局中有重要的空白,您可以像这样有策略地插入空白:

<c:out value=" " />

或像这样:

${ }

您的帖子中未提及的其他修剪空白的选项是:

  • 编写一个 servlet 过滤器,将空白作为后期渲染步骤进行修剪(这必须足够聪明,不会修剪您的“重要”空白)。
  • 将所有的 jsp 标签放在一行上(开玩笑的,不要这样做!)
于 2009-12-03T20:44:09.443 回答
2

在你想要的地方吃饭

能给我举个例子吗?我真的无法想象有这样的需求。

你的意思是在textareas里面吗?内部 HTML<pre>元素?在 CSSwhite-space:pre样式元素内部?Tomcat 的trimSpaces设置应该很好地考虑到它们。

还是您的意思是布局空间?好吧,他们真的不属于那里。考虑用 CSS 边距/填充属性替换并保留trimSpaces设置。

于 2009-12-04T00:31:52.680 回答
0

查看来自 JSOS 的修剪过滤器:http ://www.servletsuite.com/servlets/trimflt.htm

于 2009-12-06T22:51:34.017 回答
0

试试:http ://coldjava.hypermart.net/servlets/trimflt.htm 刚刚自己实现了它作为servlet过滤器,很有魅力。

另一种选择是:htmlcompressor(google一下,我只能提供1个链接atm ...)

htmlcopressor 的 taglib 允许您使用包装器,还具有用于 css 和 js 的压缩器。

于 2010-08-02T08:39:56.507 回答