我应该使用dataTable还是panelGrid? JSF

时间:2012-08-24 07:24:54

标签: java-ee jsf-2

<table id="tbl" cellpadding="5" cellspacing="0" border="0" class="display" style="padding-top: 10px;width:100%">
    <thead>
       <tr>
            <th width="20%">Emp No</th>
            <th width="15%">title</th>
            <th width="20%">Name</th>
            <th width="10%">shift</th>
        </tr>
    </thead>
    <tfoot>
         <tr>
            <th></th>
            <th></th>
            <th></th>
            <th></th>
            <th></th> 
            <th></th>
        </tr>
    </tfoot>
    <tbody style="cursor:pointer;">
        Yeh aik arzi tehreer hai
    </tbody>
</table>

当我开始为我的JSF应用程序转换此代码时,我发现我可以使用<h:dataTable><h:panelGrid>,因为这两者都是table in html的替代品。所以首先我想问的是我应该在这里使用什么? 2我如何处理<thead><tfoot><tbody>,因为我没有在JSF找到他们的替代品。所以,任何人都可以付出一些努力来帮助我这一点谢谢

1 个答案:

答案 0 :(得分:1)

如果你(在你的支持bean中)有一组你需要显示的对象,那么

<h:dataTable>是一个不错的选择。例如,如果你有一个对象员工列表(包括Id,Name,Surname等),那么这是最好的选择。

您可以在此处找到how to use dataTable的示例。

如果您以某种方式布局各种元素,那么

<h:panelGrid>是一个不错的选择。一种情况是,你必须将空间分成两列,分别为80%和20%。 虽然,'我'建议使用(panelGroup)来实现此目的,请参阅http://www.w3.org/2002/03/csslayout-howto

修改: 使用<h:dataTable>对于页眉,页脚等,您必须使用标记<f:facet />Multiple Footer Rows in a JSF dataTable