如何使用命令按钮切换到选项卡(<p:tab>
)?如何使用命令按钮以相同形式切换p:选项卡
回答
p:tabView
有一个属性activeIndex
即“活动标签的索引”(Primefaces Documentation)。
你可以从你的p:commandButton
的操作方法来设置该属性:
<p:commandButton value="Switch tab" action=#{myBean.switchTab} />
定义的操作方法switchTab()在支撑bean,让它设置一个成员activeTab
。
然后用这个成员设置你的活动标签
<p:tabView activeIndex=#{myBean.activeTab}>
如果您的服务器支持EL 2.2,您可以设置活动选项卡与行动方法调用的指标:
<p:commandButton value="Switch tab" action=#{myBean.switchTab(2)} />
然后你可以使用您的操作方法调用的参数直接设置活动索引。
还有一个名为selectTab(index)的客户端API方法;
<p:commandButton type="button" onclick="widgetvar.selectTab(2)" value="Show" />
我用Primefaces 5.1和我所做的就是我的TabView的
绑定在ManagedBean并设置activeIndex出现在您的JSF
<h:form prependId="false" id="form">
<p:tabView id="tabPanel" widgetVar="tabPanel" binding="#{managedBean.tabView}" dynamic="true">
<p:tab title="tab" >
<p:commandButton action="#{managedBean.getBla}"
icon="ui-icon-search" update=":form:tabPanel" immediate="true" >
...
在你ManagedBean
private TabView tabView;
public TabView getTabView() {
return tabView;
}
public void setTabView(TabView tabView) {
this.tabView = tabView;
}
然后在你在你的commandButton行动调用的方法,你只是做一个 tabView.setActiveIndex(1);
希望工程:)
要切换号码:使用命令按钮 在客户端相同的形式选项卡仅您可以使用widgetVar来选择/查看标签,如下所示:
注意:tabIndex将从第一个选项卡的0开始。
<p:commandButton type="button" onclick="PF('tabWidgetVar').select(1)" value="Next" />
在服务器侧就可以一个整数变量绑定与p的activeIndex属性:标签,然后EXCUTE方法来设置的索引。
它适用于我,Primefaces 5.2 – bilelovitch 2017-05-09 00:05:44
匿名用户编辑您的帖子(被拒绝)。但我认为这个编辑值得加注为:'实际上selectTab被折旧了。use select()instead' – 2011-11-27 17:22:55