在Spring MVC窗体中添加下拉菜单可以通过以下步骤实现:
public enum DomainOptions {
OPTION1("Option 1"),
OPTION2("Option 2"),
OPTION3("Option 3");
private final String label;
DomainOptions(String label) {
this.label = label;
}
public String getLabel() {
return label;
}
}
@GetMapping("/form")
public String showForm(Model model) {
model.addAttribute("domainOptions", DomainOptions.values());
return "form";
}
<form action="/submit" method="post">
<select name="selectedDomain">
<option th:each="option : ${domainOptions}"
th:value="${option}"
th:text="${option.label}">
</option>
</select>
<input type="submit" value="Submit">
</form>
在这个例子中,"domainOptions"是传递给前端页面的下拉菜单选项,通过th:each
指令遍历选项并将其渲染为<option>
标签。
@PostMapping("/submit")
public String submitForm(@RequestParam("selectedDomain") DomainOptions selectedDomain) {
// 处理选中的值
return "result";
}
在这个例子中,使用@RequestParam
注解来接收表单中选中的值,并将其转换为相应的枚举类型。
至于你收到的错误信息"未知的列'domainOptions' in 'field list'",它可能是因为在处理表单提交时的后台逻辑中,尝试在数据库的查询或操作中使用了名为"domainOptions"的列名,而该列名在数据库表中不存在。请检查你的代码逻辑,并确保正确地使用了表列名。
领取专属 10元无门槛券
手把手带您无忧上云