单击richfaces 4中的选项卡,无法更改tabPanel上的选项卡

时间:2014-01-07 12:12:18

标签: java jsf richfaces

我正在使用tabPanels和“onheaderclick”属性如下

            <rich:tabPanel id="integrationCenterTabPanel" activeItem="#{integrationCentralOverviewAction.activeTab}" switchType="ajax">
            <a4j:jsFunction name="clearSelections"
                            action="#{integrationCentralOverviewAction.clearSelections}"
                            />

                <rich:tab id="invoiceTab" header="#{messages.invoices}"
                    immediate="true" name="invoiceTab" onheaderclick="clearSelections();">

*************
*************
</rich:tab>
                <rich:tab id="customerTab" header="#{messages.customers}"
                    immediate="true" name="customerTab" onheaderclick="clearSelections();">
***************
**************
</rich:tab>

我无法通过点击标题在我的标签之间切换,当我删除onheaderclick属性时,它工作正常。我在这里做错了什么!

1 个答案:

答案 0 :(得分:1)

你实际上尝试同时做两个Ajax-Requests:

  • 通过ajax
  • 执行clearSelections
  • 通过ajax
  • 加载新标签页

因为ajax是异步处理的,所以这就是原因。

您可以尝试将rich:tabs switchType更改为switchType =“client”or switchType =“server”`(Ajax将消失)或将selectionClearing作为changeListener添加到rich:tabPanel。这看起来像是例如(另):

<rich:tabPanel ... 
   itemChangeListener="#{integrationCentralOverviewAction.clearSelections}"/>

希望它有所帮助...