Jsf 2 Primefaces Panelgrid未正确渲染
您好,我的Panelgrid有问题。 它的渲染不正确。下面的代码应呈现为两列:Jsf 2 Primefaces Panelgrid未正确渲染,jsf-2,primefaces,Jsf 2,Primefaces,您好,我的Panelgrid有问题。 它的渲染不正确。下面的代码应呈现为两列: <p:panelGrid id="pnl" columns="3" > <p:row> <p:column> <h:outputText value="Types" /> <p:selectOneMenu id="tipifase" value="#{home.t}"
<p:panelGrid id="pnl" columns="3" >
<p:row>
<p:column>
<h:outputText value="Types" />
<p:selectOneMenu id="tipifase" value="#{home.t}"
>
<f:selectItems value="#{home.types}" />
</p:selectOneMenu>
</p:column>
<p:column>
<h:outputText value="Step 1" /> <h:inputText value="#{faseAperta.step1}" />
<f:verbatim><br /></f:verbatim>
<h:commandLink action="#{home.search}" >
<h:graphicImage value="images/icosearch.gif" style="{border: 0}" />
<h:outputText value="ID field" />
</h:commandLink>
</p:column>
<p:column></p:column>
</p:row>
</p:panelGrid>
不幸的是
<h:commandLink action="#{home.search}" >
<h:graphicImage value="images/icosearch.gif" style="{border: 0}" />
<h:outputText value="ID field" />
</h:commandLink>
在第一列下的新行上渲染。
我希望有三列代替。我的代码有什么问题吗?标记位于第三列,这就是为什么命令链接位于第一列
如果删除它,它将起作用。正如另一个答案所述,将在第三列中显示。如果要垂直堆叠组件,则始终可以使用h:panelGrid
<p:column>
<h:panelGrid columns="1">
<h:outputText value="Step 1" /> <h:inputText value="#{faseAperta.step1}" />
<h:commandLink action="#{home.search}" >
<h:graphicImage value="images/icosearch.gif" style="{border: 0}" />
<h:outputText value="ID field" />
</h:commandLink>
</h:panelGrid>
</p:column>