如何从下拉列表中将信息提交到Spring Controller?

时间:2018-10-18 13:38:09

标签: spring thymeleaf

我想传递有关我从项目列表中选择哪个项目的信息。为此,我制作了一个包含表单的HTML页面。

number_of_observations, number_of_time_intervals, number_of_dimensions_per_observation

这是我的POST请求:

number_of_observations, 1, number_of_dimensions_per_observation

我收到此错误:

<form th:action="@{/cidashboard/table}" th:object="${projectVariantSelected}" method="post">

<p>Project variants options:</p>
    <select class="form-control" th:field="*{projectVariantId}">
        <option  th:each = "projectVariant : ${projectsVariants}"
                 th:value="${projectVariant.projectVariantId}"
                 th:text="${projectVariant.projectVariantName}">
        </option>
    </select>

<input type="submit" value="submit"/>
</form>

1 个答案:

答案 0 :(得分:0)

th:object中的id必须代表模型中的现有对象。您可以在控制器中执行以下操作:

@ModelAttribute
public void addAttributes(Map<String,Object> model) {
    model.put("projectVariantSelected", new ProjectVariant());
}

在返回视图之前,必须初始化您的模型属性。 Spring标签将使用您的百里香叶视图字段,并将填充可用的model属性。