【问题标题】:JSF change how f:selectItem rendersJSF 改变 f:selectItem 的呈现方式
【发布时间】:2015-03-26 10:26:34
【问题描述】:

我有一个标签 h:selectManyCheckbox,其中包含一个列表循环。对于列表中的每个项目,我需要一个复选框。不幸的是,复选框 + 标签的格式与 jsf 创建的表格不对应。我需要一个围绕每个项目的 div,如下所示:

<div class="form_control var_checkbox">custom 
    <input type="checkbox" class="checkbox" name="service" id="service_0" data-product="additional_price" data-product-add-price="100.0">
    <label class="label" for="service_0">title</label>
    <span class="guarantee_price">CHF 100.0</span>
</div>

但是 jsf 是这样渲染的:

<table>
   <tbody>
      <tr>
         <td><input id="addToCart:j_id_29_2:0" type="checkbox" name="addToCart:j_id_29_2" value="0"><label for="addToCart:j_id_29_2:0">&nbsp;title</label></td>
         <td><input id="addToCart:j_id_29_2:1" type="checkbox" name="addToCart:j_id_29_2" value="1"><label for="addToCart:j_id_29_2:1">&nbsp;titel2</label></td>
      </tr>
   </tbody>
</table>

这是当前生成它的代码:

<h:selectManyCheckbox value="${addToCartBean.selectedServicesIndexes}">
    <c:forEach items="#{productServicesJSFBean.productServicePlusBeanKeySet}" var="productServicePlusKey">
        <c:forEach items="#{productServicesJSFBean.productServicePlusBeans[productServicePlusKey]}" var="productServicePlus">
            <div class="form_control var_checkbox">
                <f:selectItem itemValue="${counter}" itemLabel="${productServicePlus.servicePlusDisplay.title}" >custom </f:selectItem>
            </div>
            <c:set var="counter" value="${counter + 1}"/>
        </c:forEach>
    </c:forEach>
</h:selectManyCheckbox>

我尝试手动创建复选框,但 jsf 没有选择它。我们不能使用表格,它必须是 div 格式。如何更改 jsf 呈现这些 selectItems 的方式。我不希望它在全球范围内,只对这里的人。我该怎么做?

【问题讨论】:

  • 您是否尝试将带有“所需输出”的代码放在ui:repeat 中?这样,您可以使页面呈现您喜欢的任何内容。将 true/false 选择存储在后面的 HashMap&lt;object, boolean&gt; 中,并使用您的服务 ID 键入。

标签: spring jsf


【解决方案1】:

我发送这个问题的人向我发送了这个 SO 问题,我没有通过谷歌找到:Render selectManyCheckbox without HTML table。让它与&lt;h:outputLabel&gt;&lt;h:selectBooleanCheckbox&gt;一起工作

【讨论】:

    猜你喜欢
    • 2011-02-02
    • 2023-01-29
    • 1970-01-01
    • 2011-10-19
    • 1970-01-01
    • 2011-08-23
    • 1970-01-01
    • 2014-03-26
    • 1970-01-01
    相关资源
    最近更新 更多