2013-12-16 37 views
0

我有一個項目列表(16位數),我需要提供複選框。 我已經使用af:selectManyCheckbox來呈現它們。面臨的挑戰是將這16個項目分成3列。通過將h:panelGrid中的af:selectManyCheckbox放置爲「columns = 3」來試用,但它不起作用。我只是能夠在單個列中獲得列表。需要安排af:selectManyCheckbox三列

<h:panelGrid cellpadding="0" cellspacing="0" columns="2" 
       id="pg2" width="100%"> 
     <af:selectManyCheckbox id="smc1" label="Languages"> 
      <af:forEach items="#{pageFlowScope.listingCreateBean.languageList}" 
         var="language"> 
       <f:selectItem itemValue="#{language.value}" 
           itemLabel="#{language.label}" id="si1"/> 
      </af:forEach> 
     </af:selectManyCheckbox> 
    </h:panelGrid>   

幫助表示讚賞。

+0

我不認爲你可以selectManyCheckbox做到這一點。如果你可以解釋你的用例,可能還有其他方法可以實現它 – Sam

回答

1

嘗試使用<af:panelFormLayout>組件,並將列設置爲3,將行設置爲6

0

丟掉af:selectManyCheckbox
只有一個肯定的方式才達到你的目標是使用AF:迭代器AF:的forEachAF:selectBooleanCheckbox任何佈局組件組合,從而獲得所需的佈局。

並避免使用非adf組件(如h:panelGrid),它可能會導致pprs等很多麻煩。

0

試試這個

<style type="text/css"> 
.checkbox-grid { 
    width: 100%; 
} 

.checkbox-grid .x2f{ 
    width: 100%; 
} 

.checkbox-grid div { 
    display: block; 
    float: left; 
    /* 25% 4columns, 33% 3columns, 50% 2columns */ 
    width: 25%; 
} 
</style> 


<af:selectManyCheckbox value="#{listaFormatos}" styleClass="checkbox-grid"> 
    <af:forEach var="item" items="#{posiblesListaFormatos}" > 
     <f:selectItem itemLabel="#{item.value}" itemValue="#{item.value}" id="si2"/> 
    </af:forEach> 
</af:selectManyCheckbox>