首页 > 解决方案 > Primefaces tabview 事件

问题描述

我正在将应用程序从 Primefaces 3.5 迁移到最新版本,实际上是 6.2。我对关闭和更改选项卡上的事件有疑问。我已经动态创建了选项卡。TabChangeEvent 上的 tabClientId 与 UIComponent 中的不同,但它仍然有效,我可以在选项卡之间正确更改。真正的问题是当我关闭选项卡时,然后在 contextEvent 我有 tabClientId = [object Object] 并且 tabIndex 为空,所以应用程序在这里爆炸:

int tabindex = Integer.parseInt(params.get(clientId + "_tabindex"));

有人知道如何解决这个问题吗?

                <p:tabView var="tabview" value="#{tabBean.tabs}"
                       binding="#{tabBean.tabGlTabView}" id="panelGl"
                       widgetVar="panelGlJs" dynamic="true" styleClass="contentPanel"
                       activeIndex="#{tabBean.index}">
                <p:tab title="#{tab.title}"
                       closable="true">
                    <ui:include src="#{tabBean.tab}" />
                </p:tab>

                <p:ajax event="tabChange"
                        onstart="setActive()"
                        update="@(this)" />
                <p:ajax event="tabClose"
                        listener="#{tabBean.onTabClose}" />
            </p:tabView>

标签: jsfeventsprimefaces

解决方案


推荐阅读