【发布时间】:2013-09-03 12:23:15
【问题描述】:
我需要根据用户变量显示不同的 html。当我调试代码时,一切正常。但通常当用户不为空时没有变化:
<div id="main-menu">
<c:set var="logText" value="Log in"/>
<c:set var="logId" value="login-item"/>
<c:if test="${user != null}">
<c:set var="logText" value="Log out"/>
<c:set var="logId" value="logout-item"/>
</c:if>
<a href="">About</a> <span id="<c:out value="${logId}" />"><c:out value="${logText}" /></span>
</div>
你能帮我吗,为什么 if 语句不起作用?
【问题讨论】:
-
使用
ne而不是!= -
使用 ${not empty user} 来检查 null 和空字符串
-
@Philipp:它们是等价的。
-
@AurA:很好,但请注意,它仅在
${user}是String时才有效(通常,这是一个完整的Userjavabean 实例,其中包含所有与用户相关的属性,例如名字,生日,电子邮件等)。 -
@BalusC 是的,这是真的.