我正在尝试实现一个JSTL逻辑,该逻辑显示基于以下逻辑的提交按钮:
<c:choose>
<!-- if it's demo mode skip every limit check, if not check them -->
<c:when test="#{dashboard.demoMode == 'false'}">
<c:when test="#{dashboard.allowedTrades == 0}">
<h:commandButton id="buyx" x:data-toggle="modal" x:data-target="#hitsModal" />
</c:when>
<c:when test="#{dashboard.currentBalance == 0}">
<h:commandButton id="buyz" x:data-toggle="modal" x:data-target="#chargeModal" />
</c:when>
</c:when>
<c:otherwise>
<h:commandButton id="buy" action="#{dashboard.calculateProcessing}" />
</c:otherwise>
</c:choose>
但不幸的是,我得到了 2 个按钮 -buyx
buyz
.这些按钮一起显示。只应显示一个按钮。
有没有办法以一次只显示一个按钮的方式实现代码?
有没有办法以一次只显示一个按钮的方式实现代码?
是的,没有以奇怪的嵌套方式使用 jstlc:when
,而是将内部的包裹在c:choose
中或将它们更改为c:if
的。
题外话,其中的命令按钮看起来很奇怪。