如何根据jsp页面中带有变量的<c:if>显示不同的Web内容</c:if>

时间:2014-04-05 10:19:49

标签: java html jsp if-statement

我正在尝试在jsp页面中显示不同的Web内容,具体取决于用户的访问级别(管理员或用户)。 如果用户是管理员,我有一个属性为“access”的会话= 1;否则= 2;这是有效的,因为我可以通过

查看页面中的访问级别

<%out.print("access = "+session.getAttribute("access"));%>

我以这种方式使用var TEST尝试<c:if>

<%String test = session.getAttribute("access").toString();%>
<%out.print("test = "+test);%>

  <c:if test="1">
          <p>Content Admin (table for example)</p>
    <c:else>
    .....
    </c:else>
</c:if>

它永远不会显示您在页面上的If语句中放置的内容。 有解决方案吗? 谢谢。

1 个答案:

答案 0 :(得分:1)

你应该真正阅读你正在使用的东西的文档。没有c:else标签。这不存在,也从未存在过。

<c:if test="1"> 

将测试1是否为真。你不希望这样。您想测试access是否等于1。

所以你需要

<c:choose>
    <c:when test="${access == 1}">
        ...
    </c:when>
    <c:otherwise>
        ...
    </c:otherwise>
</c:choose>