1

我在 Richfaces 上看到了使用rich:tabPanel动态选项卡的最佳方式是 with a4j:repeat,但这在我的应用程序中不起作用。

这是我的代码:

<html xmlns="http://www.w3.org/1999/xhtml"
xmlns:h="http://java.sun.com/jsf/html"
xmlns:ui="http://java.sun.com/jsf/facelets">
<h:head>
    <title>Java EE 6 Starter Application</title>
    <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />   
</h:head>
<h:body>
    <h:form>
        <div id="topArea">
            <ui:insert name="topArea"/>
        </div>
        <div id="mainArea">
            <ui:insert name="mainArea"/>  
        </div>
        <div id="footerArea">
            <ui:insert name="footerArea"/>
        </div>
    </h:form>
</h:body>
</html>

topArea,我有这个菜单:

<rich:panelMenu>
    <rich:panelMenuItem label="Clienti" name="Clienti"  action="#{tabsBean.addTab()}"     render="tabsPanel" />                                     
</rich:panelMenu>

mainArea,我有这个tabPanel

<rich:tabPanel id="tabsPanel" switchType="client"  activeItem="#{tabsBean.activeTab}" >
    <a4j:repeat  value="#{tabsBean.tabs}" var="tab">
        <rich:tab name="#{tab.name}">
            <f:facet name="header">#{tab.name}</f:facet>
            <h:form>
                <h:outputText value="Enter Name:" />
                <h:inputText id="input" />
                <h:outputText value="Enter you interests:" />
                <h:inputTextarea cols="17" rows="3" />
                <h:outputText value="Choose your favourite color" />
                <h:selectOneMenu>
                    <f:selectItem itemLabel="Red" itemValue="0" />
                    <f:selectItem itemLabel="Black" itemValue="1" />
                    <f:selectItem itemLabel="Green" itemValue="2" />
                    <f:selectItem itemLabel="White" itemValue="3" />
                </h:selectOneMenu>
            </h:form>
        </rich:tab>
    </a4j:repeat>
</rich:tabPanel>

我的烦恼是:

  • 未创建选项卡
  • 为什么陈列柜使用嵌套形式?嵌套表格不会造成麻烦吗?

谢谢

4

1 回答 1

0

a4j:repeat仅从 4.3.0.Final 开始支持 动态选项卡,请参阅此处了解更多详细信息:http: //www.bleathem.ca/blog/2013/01/dynamic-panels-with-a4jrepeat.html

对于早期版本c:forEach items="#{tabsBean.tabs}" var="tab"可以使用。

于 2013-03-07T05:09:07.290 回答