2012-03-02 56 views
3

我使用Primefaces(版本3.0.1)p:tabView組件,該組件顯示模型中列表支持的動態數量的選項卡。 TabView內的選項卡可關閉。我想通過關閉事件刪除與選項卡關聯的列表元素。Primefaces TabView按模型 - 刪除與選項卡關聯的模型

這是我的觀點:

<p:tabView id="tabView" var="iterator" value="#{bean.list}"> 
    <p:ajax event="tabClose" 
     listener="#{bean.removeElement(iterator)}" process="@this" /> 

     <p:tab id="tab" closable="true"> 
      <h:outputText value="#{iterator.text}" /> 
     </p:tab> 
</p:tabView> 

我的豆處理程序:

public void removeElement(Element e) { 
    this.list.remove(e); 
} 

Element e在這種情況下

我還試圖用p:collectorp:ajax元素內空。 primefaces.org展示中有example。據我的事件處理程序應該看起來像

public void removeElement(TabCloseEvent event) { 
    // ... 
} 

但我不知道我怎麼能得到與選項卡列表元素相關聯。

所有的答案將不勝感激。在此先感謝

回答

2

public void removeElement(TabCloseEvent event)應該使用,imo。

根據TabCloseEvent它有一個方法getData()。這應該讓你訪問你的模型類。免責聲明:我還沒有像您那樣使用TabView,但它對Primeface的Tree組件(即節點的選擇)以這種方式工作。你能回覆你的發現嗎?

+0

恩,謝謝,我檢查一下。我找不到任何關於'getData()'方法的文檔 – nikagra 2012-03-08 07:34:39