2011-10-12 101 views
1

的標籤我有一個了SelectItem對象數組獲取Id和選定的項目

SelectItem[] list; 

<h:selectOneMenu value="#{Bean.id}">       
    <f:selectItems value="#{Bean.list}"/> 
</h:selectOneMenu> 

我能得到ID,但我怎樣才能標籤...

回答

1

該項目的標籤不會作爲請求發送參數,只有項目值。這是通過HTML規範。但是你根本不需要從請求中獲取它。您在支持bean中的list中已經有已經。如果您將其設置爲Map<K, V>而不是SelectItem[],那麼您應該很容易就能夠獲得與所選值關聯的標籤。

String label = map.get(value); 
// ... 

在JSF 2.X/EL 2.2可以在<f:selectItems>使用Map<K, V>,但如果你仍然在舊JSF 1.x中,那麼你應該基於該地圖上的其他SelectItem[]List<SelectItem>烘烤。