如何在JSP中执行<c:choose>操作之前读取变量?</c:choose>

时间:2014-05-22 06:48:31

标签: java image jsp jstl

我可以使用getRating()方法读取我的变量。当我使用

打印时
<c:out value="${obj.getRating()}" />

打印该值。但我需要的是根据下面的评级显示图像。

<c:choose>
    <c:when test="#{obj.getRating() eq 5 }"><img src="images/5star.png" /></c:when>
    <c:when test="#{obj.getRating() eq 4 }"><img src="images/4star.png" /></c:when>
    <c:when test="#{obj.getRating() eq 3 }"><img src="images/3star.png" /></c:when>
    <c:when test="#{obj.getRating() eq 2 }"><img src="images/2star.png" /></c:when>
    <c:otherwise> <img src="images/1star.png" /></c:otherwise>

 </c:choose>

然后它给出了语法错误。我怎样才能做到这一点?在去之前我是否需要读取变量并存储在某个地方?请帮忙。

1 个答案:

答案 0 :(得分:2)

应该是

<c:when test="${obj.getRating() eq 5 }">

而不是

<c:when test="#{obj.getRating() eq 5 }">

使用$代替#