thymeleaf下拉框前后端代码
时间: 2023-11-01 13:51:49 浏览: 79
Thymeleaf 是一个模板引擎,它可以与后端的任何框架一起使用,包括 Spring MVC、Spring Boot 等。下面是一个简单的 Thymeleaf 下拉框前后端代码示例:
1. 后端代码(Java + Spring MVC)
```java
@Controller
public class MyController {
@GetMapping("/myform")
public String myform(Model model) {
List<String> options = Arrays.asList("Option 1", "Option 2", "Option 3");
model.addAttribute("options", options);
return "myform";
}
@PostMapping("/submit")
public String submit(@RequestParam String selectedOption) {
System.out.println("Selected option: " + selectedOption);
return "redirect:/myform";
}
}
```
2. 前端代码(HTML + Thymeleaf)
```html
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<meta charset="UTF-8">
<title>My Form</title>
</head>
<body>
<form action="/submit" method="post">
<select name="selectedOption">
<option th:each="option : ${options}" th:value="${option}" th:text="${option}"></option>
</select>
<button type="submit">Submit</button>
</form>
</body>
</html>
```
代码解释:
- 后端代码中,`myform` 方法返回了一个 Thymeleaf 模板名 `myform`,同时在模型中添加了一个名为 `options` 的属性,值为一个包含多个选项字符串的列表。
- 前端代码中,`th:each` 属性用于遍历 `options` 列表,并将每个选项字符串渲染成一个 `option` 元素。`th:value` 属性用于指定每个选项的值,`th:text` 属性用于指定每个选项的文本内容。
- 当用户提交表单时,后端代码中的 `submit` 方法会被调用,其中 `@RequestParam` 注解用于获取用户选择的选项值。
注意事项:
- Thymeleaf 的命名空间 `xmlns:th="http://www.thymeleaf.org"` 必须在 HTML 根元素中声明。
- Thymeleaf 表达式必须用 `${...}` 或 `*{...}` 的形式包含在 HTML 元素属性中。
阅读全文