我想在点击commandButton
时显示数据表。我的文件看起来像这样:
<h:commandButton value="List all students"></h:commandButton>
<h:panelGroup id="table-wrapper">
<h:dataTable value = "#{jSFDatabase.students}" var="s" border="1">
<h:column><f:facet name = "header"><h:outputText value="ID"/></f:facet>
<h:outputLabel value="#{s.id }"></h:outputLabel>
</h:column>
<h:column><f:facet name = "header"><h:outputText value="Firstname"/></f:facet>
<h:outputLabel value="#{s.firstname }"></h:outputLabel>
</h:column>
<h:column><f:facet name = "header"><h:outputText value="Lastname"/></f:facet>
<h:outputLabel value="#{s.lastname }"></h:outputLabel>
</h:column>
<h:column><f:facet name = "header"><h:outputText value="Birthdate"/></f:facet>
<h:outputLabel value="#{s.birthdate }"></h:outputLabel>
</h:column>
</h:dataTable>
</h:panelGroup>
我该如何解决这个问题?我试图更新数据表但是没有用。
答案 0 :(得分:-1)
您可以使用css完成此操作。 使用切换方法在托管bean中添加布尔标志:
@ManagedBean
public class Mybean {
private boolean show = false;
public void toggle() {
show= !show;
}
public boolean isShow() {
return show;
}
public void setRender(boolean show) {
this.show = show;
}
}
在命令按钮中,调用toggle方法,更新表并在表中添加css样式,以便根据标志布尔值显示或隐藏。
<h:commandButton value="List all students" action="#{myBean.show}" update="table-wrapper"></h:commandButton>
<h:panelGroup id="table-wrapper" style="display: #{mybean.show ? 'none' : 'block'}">
...
</h:panelGroup>