我在表单中有以下HTML/JSF
元素:JSF
<div class="btn-group" data-toggle="buttons-radio">
<h:commandButton type="button" styleClass="btn btn-inverse" value="One Way"><f:ajax render="flexibleDates" listener="#{searchFlightsBean.setDirectionOneWay}"/></h:commandButton>
<h:commandButton type="button" styleClass="btn btn-inverse" value="Round Trip"><f:ajax render="flexibleDates" listener="#{searchFlightsBean.setDirectionRoundtrip}"/></h:commandButton>
</div>
<h:panelGrid columns="2" id="flexibleDates" rendered="#{searchFlightsBean.directionInd.label == 'Return'}">
<h:selectBooleanCheckbox value="#{searchFlightsBean.flexibleDates}" styleClass="flight-results-left-padding checkbox inline"/>
<h:outputText value="+/- 3 days"/>
</h:panelGrid>
我在后端 bean 中有这样的代码:
public void setDirectionOneWay(AjaxBehaviorEvent event)
{
this.directionInd = DirectionInd.ONEWAY;
log.info("setting direction to oneway " + directionInd.label);
}
public void setDirectionRoundtrip(AjaxBehaviorEvent event)
{
this.directionInd = DirectionInd.RETURN;
log.info("setting direction to return " + directionInd.label);
}
日志反映代码运行良好。
但是,panelGrid
应该渲染的内容仍然可见,没有任何迹象。有谁知道出了什么问题?