0

我的 jsp 中有一个项目列表,我想使用 bean 将它们传输到控制器。由于某种原因,该列表没有被转移。

这是使用 Spring 标签的表单:

<form:select id="MyId" path="cars" class="input-xlarge">
    <c:forEach items="${myInitialList}" var="myInitialItem">                                        
        <form:option value="${myInitialItem.id}" label="${myInitialItem.name}"></form:option>
    </c:forEach>
</form:select>

这是我在 bean 中用于映射的内容:

private Set<Car> cars = new HashSet<Car>(0);

public Set<Car> getCars() {
    return this.cars;
}

public void setCars(Set<Car> cars) {
    this.cars = cars;
}

My Car 实体包含 name 和 id 属性。

我的控制器中的 bean 是空的。没有数据被传输。我真的不知道出了什么问题。关于如何重写这个的任何想法?

更新:请注意,我需要传输所有列表,而不是所选项目。

4

1 回答 1

0

根据 HTML,只有在提交表单时才会提交 select 标记中的选定元素。

在这种情况下,当表单提交时,只有一辆车被传递给控制器​​。

为了保留所有汽车,您需要提交所有元素,但您确定吗?选择元素其要呈现的列表并选择了一个或多个,但没有在请求之间保留元素。

于 2013-09-12T11:25:43.847 回答