【问题标题】:Show list of list with checkboxes in Spring MVC在 Spring MVC 中显示带有复选框的列表列表
【发布时间】:2020-06-04 06:22:25
【问题描述】:

我正在使用 Spring MVC 开发电子商务应用程序。我有一个场景,我必须显示供应商列表,并且对于每个供应商,我们都有一个表格中的类别列表。 用户可以选择一组具有一组类别的供应商。

所以我必须在其中显示带有复选框的供应商 表单中带有复选框的类别。

我可以用复选框显示供应商的名称和类别,并将其映射到 spring 模态。但是如何与供应商一起显示复选框,以便用户可以选择。 一个类别可以映射到任意数量的供应商,用户可以选择任何一个。

<c:forEach items="${suppliers}" var="item">
            <div class="well">
                <label><s:message text="${item.username}" /></label>
                    <div id="categories" class="well">
                        <form:checkboxes items="${item.categories}" path="categories"
                                         itemValue="id" itemLabel="descriptions[0].name"
                                        delimiter="<br/>" />
                     </div>
            </div>
</c:forEach>

或者有没有更好的方法来做到这一点?

【问题讨论】:

  • 我不相信form:checkboxes 是有效的。您有一个 for 循环迭代,当您遍历 suppliers 时,您想为您的复选框生成 HTML。这里有 kinda 的例子,但是它创建了&lt;li&gt; 元素,但是原理是一样的:java2s.com/Tutorial/Java/0380__JSTL/…
  • OK 所以它变成了&lt;form:checkboxes&gt; 是一个东西,看看这里的例子:mkyong.com/spring-mvc/…
  • 谢谢,我们用form:checkboxfor loop 做到了。

标签: java spring-mvc jsp user-interface jstl


【解决方案1】:

经过一番努力,我们将它变成了工作代码。

 <c:forEach var="supplier" varStatus="statusSupplier" items="${suppliers}">
                                Supplier: <c:out value="${supplier.username}" /><br>
                      <div class="checkbox-list well">
                            <form:hidden path="supplierList[${statusSupplier.index}].id"  value="${supplier.id}" />

                            <c:forEach var="category" varStatus="statusCategory" items="${supplier.categories}">
                                <form:checkbox path="supplierList[${statusSupplier.index}].categories" 
                                                     value="${category.id}"/>

                                            <c:forEach var="desc" items="${category.descriptions}">
                                                    <c:out value="${desc.name}" /><br>
                                             </c:forEach>
                            </c:forEach>     
                      </div>
</c:forEach>

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-02-21
    • 1970-01-01
    • 2023-03-06
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多