0
我正在使用JSF和豐富的面孔4.5.5,我試圖在標籤面板的頁眉中顯示下拉列表。到目前爲止,這是我有:標籤頁眉內的JSF下拉列表
<rich:tabPanel id="reportTabPanel" >
<a4j:repeat var="reportCategory" value="${workBean.categories}">
<rich:tab>
<f:facet name="header">
<h:panelGroup>
<h:selectOneMenu value="#{reportCategory.currentSelection}" style="background:none;border:none;width:15px">
<f:selectItems value="#{reportCategory.availableReports}" />
</h:selectOneMenu>
<h:outputText value="#{reportCategory.displayedTitle}" />
</h:panelGroup>
</f:facet>
<div id="reportContent" name="content" >
<h:outputText value="#{reportCategory.displayedContent}" escape="false" />
</div>
</rich:tab>
</a4j:repeat>
</rich:tabPanel>
它顯示正常。我在左邊顯示下拉箭頭,每個選項卡標題右邊的選項卡名稱。然而事件處理是狡猾的。當我點擊下拉列表時,只要釋放按鈕(阻止我在列表中進行選擇),列表就會打開並關閉。爲了從下拉列表中選擇任何內容,我必須按住鼠標按鈕並將其釋放到標題區域之外,以便列表不會關閉。只有這樣我才能夠在下拉區域中選擇我的選項。 我相信標籤頭是抓住釋放按鈕事件,並使用它來改變標籤如果需要(這似乎很明顯)。
我想要的是下拉菜單優先於標籤頁眉。無論如何這樣做? 另外,是否有一種方法可以在鼠標懸停時打開下拉菜單?
我不是JSF的專家。我試過看實現一個自定義的渲染器,但我的問題更多的是與事件相比,而不是視覺,所以不知道這是正確的方式。任何建議?指針?
謝謝 w。
哎呀千恩萬謝Makhiel,你救了我的天! :-) – willix
我還添加了一個onclick事件處理程序,並強制使用ajax調用刷新內容和標題,並且它的作用非常強大 –
willix
要回答您的問題,選項卡中的選擇是一種選擇多個類別中的文檔的方法。 選項卡代表類別或文檔組,每個選項都顯示該組中的文檔。 就我而言,每個選項卡都是特定類型的文檔,select是以給定語言翻譯的文檔。 我不是Ux專家(我們在這個項目上有一個專家),但這是項目所有者希望它展示的方式! – willix