在新行上显示面板网格中的行

时间:2015-01-26 11:40:18

标签: jsf primefaces

我正在使用datagrid从panelgrid动态显示行。它的工作正常,但布局不好。它在新行上并排显示以下行。有人知道如何在新行上显示新行吗?我尝试使用<br/>代码,但它无效。

  <p:dataGrid style="border:10px;" value="#{TestComponent.list}" var="x">
        <p:panelGrid style="width:1250px;">
            <p:row>
                <p:column colspan="1">1.1</p:column>
                <p:column colspan="2">
                    <h:outputText value="#{x.Description}" />
                </p:column>

                <p:column colspan="4">
                    <h:inputTextarea rows="10" cols="40"
                        value="#{x.Justification}" required="false" label="Justification" />
                </p:column>
            </p:row>    
        </p:panelGrid>
        <br/>
    </p:dataGrid>

3 个答案:

答案 0 :(得分:0)

如果要创建新行,则必须创建新的<p:row>代码。

示例:

<p:panelGrid>
   <p:row>
      <p:column>Row 1/Column 1</p:column>
      <p:column>Row 1/Column 2</p:column>
   </p:row>
   <p:row>
      <p:column>Row 2/Column 1</p:column>
      <p:column>Row 2/Column 2</p:column>
   </p:row>
</p:panelGrid>

答案 1 :(得分:0)

这是做错事情的组合。 datagrid本身将childeren放在colums中彼此相邻(默认值= 3,请参阅文档http://www.primefaces.org/showcase/ui/data/dataGrid.xhtml)。所以3个panelgrids紧挨着彼此(所以三个行彼此相邻)。将列设置为1将使其工作。此外,如果没有像@pellizon提到的示例中那样的多行,则colspan不执行任何操作。

答案 2 :(得分:0)

管理去做。它必须指定我的数据网格中的列数。