if else在JSF中是有条件的



为了检查JSF中的if else条件,我尝试了应用渲染。(ref:有条件地显示JSF组件)

这部分是我的JSF index.html

<p:commandButton value="Update Hidden Label" action="#{carForm.updateBool}" />
<h:outputText value="Text A" />
<h:outputText value=" Text B" rendered="#{carForm.booleanValue}" />

这是一个java类

private boolean booleanValue;
public boolean isBooleanValue() {
    return booleanValue;
}
public void setBooleanValue(final boolean booleanValue) {
    this.booleanValue = booleanValue;
}
public void updateBool() {
    booleanValue = true;
}

当我尝试点击"更新隐藏标签"时,它会将java类中的布尔值更新为true,但是在index.html页面中"文本B"仍然没有出现。

您还需要使用<h:outputText value=" Text B" rendered="#{carForm.booleanValue}" />更新页面片段

您可以使用<p:panel id="textPanel"></p:panel>并将您的代码放在那里。

update参数加到值为textPanelp:commandButton上,如update="textPanel"

<p:panel id="textPanel">
  <p:commandButton value="Update Hidden Label" action="#{carForm.updateBool}" update="textPanel" />
  <h:outputText value="Text A" />
  <h:outputText value=" Text B" rendered="#{carForm.booleanValue}" />
</p:panel>

相关内容

  • 没有找到相关文章

最新更新