首页 > 解决方案 > 无法使用 AccordionPanel PrimeFaces(JSF)在打开的选项卡上获取当前索引

问题描述

我需要获取已打开选项卡的 intex。我在手风琴面板上使用这个 ajax:

<p:ajax event="tabChange" listener="#{ambienteController.onAccordionTabChange}" />

这是豆子:

public void onAccordionTabChange(final TabChangeEvent event) {
    AccordionPanel view = (AccordionPanel) event.getComponent();
    this.accordionTabIndex = view.getActiveIndex();
    System.out.println(this.accordionTabIndex);
}

sysout 总是打印 0 作为当前活动选项卡的索引,这让我很困惑,因为我使用该信息将文件添加到反映用户环境的特定选项卡,因此所有文件最终都在第一个选项卡上。提前致谢。

标签: jsfprimefaces

解决方案


尝试在您的控制器上声明一个字符串索引并将您的手风琴面板组件设置为 on activeIndex="#{ambienteController.index}"


推荐阅读