JSTL删除日期之间的空白区域

时间:2013-12-16 09:00:55

标签: jsp jstl el jsp-tags

我曾经打印时间,但我在日期时间和分钟之间找到了空格,我习惯按以下方式格式化时间:

<fmt:formatDate var="formtMins" pattern="m" type="TIME" timeStyle="default" value="${exam.to}" />
<fmt:formatDate var="formHours" pattern="h" type="TIME" timeStyle="default" value="${exam.to}" />

鉴于:exam.to是一个日期对象,如果分钟为零或小时数小于10,我习惯于添加额外的零,如下所示:

 <c:if test="${formtMins==0}">0</c:if>
    ${formtMins}:
    ${formHours}
<c:if test="${formHours<10}">0</c:if>

前面的代码打印时间如下:

12 : 0 0
0 4 :46
0 2 : 0 0

当我添加额外的零并且它不是首选的时候出现空格,所以我试图删除任何空格,如下所示,但不幸的是它不起作用:

 <c:if test="${formtMins==0}">0${fnc:trim('')}</c:if>
  ${fnc:trim(formtMins)}:
  ${fnc:trim(formHours)}
<c:if test="${formHours<10}">0${fnc:trim('')}</c:if>

所以问题是如何在时间之间删除这个空格?

2 个答案:

答案 0 :(得分:1)

尝试使用

<%@ page trimDirectiveWhitespaces="true" %>

在您的JSP页面上,或

<jsp-config>
  <jsp-property-group>
    <url-pattern>*.jsp</url-pattern>
    <trim-directive-whitespaces>true</trim-directive-whitespaces>
  </jsp-property-group>
</jsp-config>

web.xml中为所有JSP页面配置空白区域。

这有点贪心。如果您需要EL或标签之后的空格,可以使用${' '}

答案 1 :(得分:0)

将所有陈述放在一行上。 JSP中的换行符在HTML中添加了一个空格。

<c:if test="${formtMins==0}">0</c:if> ${formtMins}:${formHours} <c:if test="${formHours<10}">0</c:if>

不是很好但是它的确有效。