在我的应用程序中,jsp 上显示了一个字段。我用它写的
<td>
<c:out value="${field}" />
</td>
但是,我不希望显示该值(字段)中的所有内容。只应显示前 15 个字符。我怎样才能做到这一点?我正在使用 spring 3.1,它是 amven 项目。谢谢,
您可以使用前面的答案中描述的 jstl 子字符串函数,JSP 字符串格式截断
用这个:
<c:choose>
<c:when test="${fn:length(field) > 15}">
${fn:substring(field,0,10)}...
</c:when>
<c:otherwise>
${field}
</c:otherwise>
</c:choose>
你可以用来显示你的输出,我这里直接写了。
所需要的只是:
${ fn:substring( field, 0, 15 ) }
如果传递的字符串比所需长度短,则不需要检查字符串长度,因为 JSTL fn:substring() 函数会处理它。
<c:set var="string10" value="1234567890"/>
<br/>string : ${ string10 }
<br/>substring 0..10: ${ fn:substring( string10, 0, 10 ) }
<br/>substring 0..20: ${ fn:substring( string10, 0, 20 ) }
给出:
string : 1234567890
substring 0..10: 1234567890
substring 0..20: 1234567890
请注意,这是与核心 Java String.substring(..) 不同的行为。
<br/>substring 0..20: ${ string10.substring( 0, 20 ) }
给出:
StringIndexOutOfBoundsException