0
動態創建標籤p:tabView無法正常關閉。 當我點擊標籤打勾關閉選定的選項卡。始終關閉第一個標籤頁,而不是當前點擊標籤頁。 我想要的是,關閉被點擊的標籤。這裏只關閉第一個選項卡,而不是點擊選項卡。primefaces p:tabView動態標籤沒有正確關閉
我的JSF:
:::::::::::
<h:form prependId="false" id="form">
<p:tabView value="#{deneBean.tabs}" var="tab" id="myTabView" binding="#{deneBean.tabView}">
<p:ajax event="tabClose" listener="#{deneBean.closeme(tab)}" update="@form"/>
<p:tab title="#{tab.title}" closable="true" >
#{tab.content}
</p:tab>
</p:tabView>
<p:commandButton value="Add Tab" action="#{deneBean.add}" update="@form" />
</h:form>
:::::::::::::::::::::::
我的JSF豆:
@ManagedBean
@ViewScoped
public class DeneBean implements Serializable {
public DeneBean() {
}
private List<NeuTab> tabs;
@PostConstruct
public void init() {
tabs = new ArrayList<NeuTab>();
}
public void add() {
tabs.add(new NeuTab("tab" + tabs.size(), "some content"));
}
public void remove(NeuTab tab) {
tabs.remove(tab);
}
public List<NeuTab> getTabs() {
return tabs;
}
public boolean closeme(NeuTab tab) {
for (int i = 0; i < tabs.size(); i++) {
NeuTab neuTab = tabs.get(i);
System.out.println(i + ".list:" + neuTab.getTitle());
}
tabs.remove(tab);
return true;
}
TabView tabView = new TabView();
public TabView getTabView() {
return tabView;
}
public void setTabView(TabView tabView) {
this.tabView = tabView;
}
:::::::::::::::::::
我的班級NeuTab:
public class NeuTab {
private String title;
private String content;
public NeuTab(String title, String content) {
this.title = title;
this.content = content;
}
public String getTitle() {
return title;
}
public String getContent() {
return content;
}
}