0

JSF 允许这种panelGroup内部的“嵌套”吗?selectOneMenu

<p:selectOneMenu>
    <f:selectItem itemValue="MOUNT" itemLabel="Local directory" />
    <f:selectItem itemValue="AS3" itemLabel="Amazon S3" />
    <f:selectItem itemValue="FTP" itemLabel="FTP site" />
  <h:panelGroup rendered="#{ConfigBean.rackspace}">
    <f:selectItem itemValue="RCF" itemLabel="RackspaceCloud"/>
  </h:panelGroup>     
</p:selectOneMenu>

4thselectItem永远不会被渲染,不管ConfigBean.rackspacetrue.

我也试过p:outputPanel代替h:panelGroup.

4

2 回答 2

1

您可以将其包装起来,c:if但如果您更改 bean 中的机架空间,它不会重新呈现选择项。

<c:if test="#{ConfigBean.rackspace}">
    <f:selectItem itemValue="RCF" itemLabel="RackspaceCloud"/>
  </c:if>  

请记住,JSTL 组件仅在创建视图期间执行,因此您将无法 <f:selectItem itemValue="RCF" itemLabel="RackspaceCloud"/>根据 bean 中的条件为后续 POSTS 添加。

于 2013-03-06T15:59:31.647 回答
1

你不能用<h:panelGroup那个......你最好不要用<c:if那个(INMO它是一种矫枉过正)

相反,只需f:selectItems在服务器端有条件地使用和加载它......

于 2013-03-06T16:03:10.473 回答