0

我在jsf页面中有两个primefaces面板组件。我想通过单击primefaces commandButton在面板上显示一些数据,并在页面加载时显示panel1。单击commandbutton时,我不想显示其他面板。所以我在backing bean中定义了布尔变量在面板的可见属性中使用。但它不起作用。

支持豆:

 @ManagedBean
 @SessionScoped
 public class Bean implements Serializable {
   private boolean show;

   @PostConstruct
   public void init(){
      this.show=true;
   }
   public void action_commandButton(){
      this.show=false;
   }
  }

jsf页面

  <p:commandButton style="text-align: center;font-size:12px;"  
                             action="#{bean.action_commandButton()}"  value=""/>

 <!--panel 1 -->
  <p:panel visible="#{bean.show}">
      <p:dataGrid>
        <!-- data from datbase-->
      </p:dataGrid>
  </p:panel>

  <!-- panel 2-->
  <p:panel visible="#{!bean.show}">
      <p:dataGrid>
        <!-- data from datbase-->
      </p:dataGrid>
  </p:panel>

如何解决这个问题呢?提前致谢。

4

0 回答 0