在JSTL <c:out> </c:out>中嵌套自定义JSP标记

时间:2013-10-11 19:47:15

标签: jsp jstl jsp-tags

我正在尝试做这样的事情:

<script type="text/javascript" src="<c:out value="${jsDirectory}javascript/StoreCommonUtilities.<tag:versionnumber/>js"/>"></script>

其中<tag:versionnumber/>是一个自定义的自定义JSP标记。目前,它只打印出"<tag:versionnumber/>"。任何帮助表示赞赏。

1 个答案:

答案 0 :(得分:2)

<c:out>用于转义特殊HTML字符(<>&'")。我确定希望你在jsDirectory属性中没有这些字符。所以没有理由使用<c:out>

<script type="text/javascript" src="${jsDirectory}javascript/StoreCommonUtilities.<tag:versionnumber/>js"></script>

也就是说,如果要在其他标记属性中使用<tag:versionnumber>的值,则应创建EL函数而不是标记,或者可以将结果存储在页面范围属性中,正如<c:set>所做的那样:

<tag:versionnumber var="version"/>
<c:out value="${version}"/>