如何在循环中动态添加 <p:tab> 到 <p:wizard>

How to dynamically add <p:tab> to <p:wizard> in a loop

我想在循环中将 <p:tab> 个组件动态添加到 <p:wizard> 个组件。

我尝试在 <p:wizard> 组件内部和外部使用 <ui:repeat>

<p:wizard>
    <ui:repeat value="#{tabBean.tabs}" var="tab">
        <p:tab title="#{tab.tabname}">
    </ui:repeat>
</p:wizard>
<ui:repeat value="#{tabBean.tabs}" var="tab">
    <p:wizard>
        <p:tab title="#{tab.tabname}">
    </p:wizard>
</ui:repeat>

None 两次尝试都有效。我怎样才能达到我的要求?

<p:wizard>只懂<p:tab>child仁。它不理解 <ui:repeat> child。您需要在 JSF 组件树中创建物理 [​​=12=] children 作为 <p:wizard> 组件的直接 child。

<c:forEach> taghandler 能够做到这一点。

<p:wizard>
    <c:forEach items="#{tabBean.tabs}" var="tab">
        <p:tab title="#{tab.tabname}">
    </c:forEach>
</p:wizard>

另请参阅:

  • JSTL in JSF2 Facelets... makes sense?