JSF2或primefaces p:selectManyCheckbox样式与图标

时间:2013-03-28 21:37:18

标签: jsf checkbox primefaces styling selectmanycheckbox

使用图标设置多个复选框的问题?

<p:selectManyCheckbox value="#{Step4Bean.selectedItems}" id="tag-list" >
                        <f:selectItems value="#{Step4Bean.allItems}" var="item" itemLabel="#{item}" itemValue="#{item}"/>
                    </p:selectManyCheckbox>

我有6个项目的复选框,我必须有2行,每行3个项目,每个项目附近必须是一个图标。 我们怎么解决这个问题? 这是一个输出示例链接

http://jpeg.am/images/?i=5692b9db7ea1d060bc7c97bcc788d6b8.jpg

1 个答案:

答案 0 :(得分:1)

PF已经拥有此组件的网格布局。

<h3>Grid Layout</h3>
<p:selectManyCheckbox id="grid" value="#{checkboxView.selectedCities}" layout="grid" columns="3">
    <f:selectItems value="#{checkboxView.cities}" var="city" itemLabel="#{city}" itemValue="#{city}" />
</p:selectManyCheckbox>

但最新的PF 5.2.3和5.3-SNAPSHOT具有自定义布局选项

<h3>Custom Layout (since v5.2.3)</h3>
<p:outputPanel id="customPanel" style="margin-bottom:20px">
    <p:selectManyCheckbox id="custom" value="#{checkboxView.selectedConsoles2}" layout="custom">
        <f:selectItem itemLabel="Xbox One" itemValue="Xbox One" />
        <f:selectItem itemLabel="PS4" itemValue="PS4" />
        <f:selectItem itemLabel="Wii U" itemValue="Wii U" />
    </p:selectManyCheckbox>

    <div class="ui-grid ui-grid-responsive">
        <div class="ui-grid-row">
            <div class="ui-grid-col-4">
                <p:checkbox id="opt1" for="custom" itemIndex="0" />
            </div>
            <div class="ui-grid-col-4">
                <p:checkbox id="opt2" for="custom" itemIndex="1" />
            </div>
            <div class="ui-grid-col-4">
                <p:checkbox id="opt3" for="custom" itemIndex="2" />
            </div>
        </div>
        <div class="ui-grid-row">
            <div class="ui-grid-col-4">
                <h:outputLabel for="opt1" value="Xbox One" />
            </div>
            <div class="ui-grid-col-4">
                <h:outputLabel for="opt2" value="PS4" />
            </div>
            <div class="ui-grid-col-4">
                <h:outputLabel for="opt3" value="Wii U" />
            </div>
        </div>
    </div>
</p:outputPanel>

不确定最新功能如何与<f:selectItems/>一起使用或仅与多个<f:selectItem/>一起使用。我怀疑后者

另见:   - 见http://www.primefaces.org/showcase/ui/input/manyCheckbox.xhtml

(来自PF展示的例子!)