“不再”绝对是这里的关键词。我有这个工作,甚至在比较我之前的修订后,我看不到一支冒烟的枪。
我在我的布局西侧的导航面板上放了一个手风琴。我已经覆盖了actionListener来调用一个remoteCommand,就像这样。
<p:accordionPanel widgetVar="tabPanel"
dynamic="true" cache="true"
activeIndex="-1"
actionListener="tabChange()">
<p:remoteCommand name="tabChange"
process="@this"
update=":contentPanel"
actionListener="#{viewSelectionBean.changeView}" />
当点击任何给定的选项卡时,它用于调用支持bean方法changeView,它设置html页面显示在“:contentPanel”中,但现在我没有得到支持bean操作。我在每个手风琴选项卡中都有commandLinks,它们也成功调用了changeView。它只有tabChange()似乎没有被调用。
答案 0 :(得分:0)
actionListener不是accordionPanel的属性,因此,这就是为什么它不会被调用。此功能可以使用ajax工作,但它在展开每个选项卡时显示滞后。除了延迟之外,还可以成功覆盖accordionPanel的onTabChange,但这将迫使您必须手动生效activeIndex,以及扩展标签。
<p:accordionPanel widgetVar="tabPanel"
dynamic="true" cache="true"
activeIndex="-1">
<p:ajax event="tabChange"
listener="#{viewSelectionBean.onTabChange}"
update=":contentPanel"
process="@this"
partialSubmit="true"/>