如何在一行JSF中创建元素

时间:2012-10-25 10:28:14

标签: jsf

如何使元素在一行中呈现,如下图所示:

enter image description here

以下是代码:

                                <h:outputLabel
                                        value="&#160;#{cdocmsgs['promo.action.name']}&#160;"
                                        id="promo_action_name_id"/>

                                <h:selectOneMenu id="promotion" widgetVar="sub" tabindex="206"
                                                 styleClass="select-fix-average"
                                                 value="#{cdocBean.entity.promoActionName}" effect="fade"
                                                 required="#{cdocBean.entity.promotion}" requiredMessage="#{cdocmsgs['enter.promo']}">
                                    <f:selectItem itemLabel="#{cdocmsgs['promoSelect']}"
                                                  itemValue="" />
                                    <f:selectItems value="#{promoActionBean.DAO.resultList}"
                                                   var="item" itemLabel="#{item.name}" itemValue="#{item.name}" />
                                </h:selectOneMenu>
                                <h:outputText value="" />
                                <h:outputText value="" />


                                <h:outputLabel value="&#160;#{cdocmsgs['source.of.info']}&#160;"
                                               id="whenId"/>
                                <h:selectOneMenu id="source" widgetVar="sub"
                                                 styleClass="select-fix-average"
                                                 value="#{cdocBean.entity.source}" effect="fade" tabindex="206"
                                                 required="#{cdocBean.entity.promotion}" requiredMessage="#{cdocmsgs['enter.source']}">
                                    <f:selectItem itemLabel="#{cdocmsgs['sourceSelect']}"
                                                  itemValue="" />
                                    <f:selectItems value="#{adSourceBean.DAO.resultList}" var="item"
                                                   itemLabel="#{item.name}" itemValue="#{item.name}" />
                                </h:selectOneMenu>

我已经放置了h:panelGroup但它没有帮助。

3 个答案:

答案 0 :(得分:6)

您可以像这样使用h:panelGrid:

<h:panelGrid columns="3" columnStyles="style1, style2, style3">    
    <jsfelement 1 />
    <jsfelement 2 />
    <jsfelement 3 />

    <jsfelement 4 />
    <jsfelement 5 />
    <jsfelement 6 />    
</h:panelGrid>

看起来像这样:

element1 element2 element3

element4 element5 element6

并呈现为html表格。你当然可以随意设计它。

答案 1 :(得分:0)

使用简单的html是一种选择。

或者facelets中有panelGrid和panelGroup来做到这一点。通常,在panelGrid中使用panlGroup将多个组件分组到一个单元格中。

示例:http://www.jsftoolbox.com/documentation/help/12-TagReference/html/h_panelGrid.html

答案 2 :(得分:0)

您可以使用html表

来实现此目的
<table width="100%" border="0" cellspacing="2" cellpadding="2">
  <tr>
    <td><h:outputLabel value="&#160;#{cdocmsgs['promo.action.name']}&#160;"
                                    id="promo_action_name_id"/></td>
    <td><h:selectOneMenu id="promotion" widgetVar="sub" tabindex="206"
                                             styleClass="select-fix-average"
                                             value="#{cdocBean.entity.promoActionName}" effect="fade"
                                             required="#{cdocBean.entity.promotion}" requiredMessage="#{cdocmsgs['enter.promo']}">
                                <f:selectItem itemLabel="#{cdocmsgs['promoSelect']}"
                                              itemValue="" />
                                <f:selectItems value="#{promoActionBean.DAO.resultList}"
                                               var="item" itemLabel="#{item.name}" itemValue="#{item.name}" />
                            </h:selectOneMenu></td>
         <td><h:outputText value="" /></td>
         <td><h:outputText value="" /></td>
  </tr>

</table>