【发布时间】:2014-06-02 11:07:56
【问题描述】:
我有一个要求,如果状态为 0,则添加一个 css 类 active 否则添加一个 css 类 active1,为此我已经完成了如下操作
<c:forEach items="${parentList}" var="test">
<c:choose>
<c:when test="${test[1] eq 0}">
<li><a href="#" class="active" value="${test[0].id}-${test[0].category}" id="${parent.id}" onclick="return getQuestions(this);" >
${test[0].name }</a></li>
</c:when>
<c:otherwise>
<li><a href="#" class="active1" value="${test[0].id}-${test[0].category}" id="${parent.id}" onclick="return getQuestions(this);" >
<img src="${pageContext.request.contextPath}/resources/ui_resources/img/checked.jpg" alt="" height="20" width="20"/>${test[0].name }</a></li>
</c:otherwise>
</c:choose>
</c:forEach>
现在我的要求是
${test[0].category} 是客户端然后添加一个按钮<button name="delete/>
所以现在出现了 4 个条件
- 如果状态为 0 且类别不是客户端,则添加活动类
- 如果状态为 0 且类别为客户端,则添加 class="active" 和 添加按钮。
- 如果状态不是 0 类别是客户端然后添加 class="active1" 和 添加按钮
- 如果状态不是 0 并且类别不是客户端,则只添加 class="活动"。
那么任何人都可以告诉我如何在使用 jstl 的 if 循环中使用 if 循环
【问题讨论】:
-
我会分别处理类和按钮的要求。所以基本上总是上课活跃,除非
status is not 0 category is client。仅当类别为客户端时添加按钮。为什么会有4个条件?您可以在<c:choose ../>之前确定类,并使用<c:choose />来确定是否呈现(或不呈现)按钮。 -
@M.Deinum 所以你认为我必须创建 3 个
-
没有。 1 c:if 设置变量和 1 c:choose。或者创建一个你可以调用来确定类的函数,那么你只需要 1 个 c:choose。
-
您可能希望将 img 元素移动到 css 类 (active1)。 (刚刚注意到为 active1 添加的图像)。
-
@M.Deinum 你能不能把它作为答案,这样我就可以投票了