0

我想根据其“opened”属性的值设置我的依赖样式。更具体地说:如果opened==false的值我想在打印输出上隐藏simpleTogglePanel(即设置样式为显示:无)。

所以像这样(伪代码):

<rich:simpleTogglePanel opened="false" styleClass="#{ if opened then regular else hidePrint}" />

这可能吗?如何?我正在使用 Richfaces 3.3.2。!

4

1 回答 1

1

使用组件的渲染属性。

<rich:simpleTogglePanel rendered=#{bean.boolean} />

编辑

您的托管 bean 中应该有一个布尔属性,因此您将知道它是否打开了您的 togglePanel。所以像

@ManagedBean
@RequestScoped
public class Bean {
    private boolean opened;
    //setters and getters
}

然后在您的页面上像这样更改您的 togglePanel

<rich:simpleTogglePanel opened="#{bean.opened}" rendered="#{bean.opened}">

将 bean 中的属性设置为 true 或 false,具体取决于您是否要默认隐藏 togglePanel。或者您可以在每次使用 Ajax 切换时隐藏它,将此行放在 simpleTogglePanel 标记中

 <p:ajax listener="#{bean.hidePanel}" update=":panel" />

将您的面板的 id 设置为面板并将方法 hidePanel 添加到您的面板,这只是将打开的布尔值设置为 false。编辑 - 它也应该在没有那个监听器的情况下工作

于 2012-06-06T07:52:42.190 回答