我正在尝试使用Springboot中的ArrayList加载下拉列表,因为我是springboot的新手。
我已经尝试过,但没有按预期工作。
请找到我尝试过的代码,如下所示:
@Controller
public class DemoController {
@GetMapping("/create")
public String create(Model model) {
model.addAttribute("create", new Demo());
return "create";
}
public void countriesList(Model model) {
List<String> countryList = new ArrayList<>();
countryList.add("US");
countryList.add("UK");
model.addAttribute("countries", countryList);
}
}
<form action="#" th:action="@{/create}" th:object="${create}" method="post">
<select th:field="*{country}">
<option value=""> -- </option>
<option th:each="country : ${countries}" th:value="${country}" th:text="${country}"></option>
</select>
</form>
最后没有错误,只是使用--
加载到下拉列表中,而不加载国家/地区。
请帮助我。
答案 0 :(得分:1)
您从未调用过将模型添加国家/地区的功能...
@Controller
public class DemoController {
@GetMapping("/create")
public String create(Model model) {
model.addAttribute("create", new Demo());
countriesList(model); // this line is needed
return "create";
}
private void countriesList(Model model) {
List < String > countryList = new ArrayList < > ();
countryList.add("US");
countryList.add("UK");
model.addAttribute("countries", countryList);
}
}
答案 1 :(得分:0)
尝试使用此代码块
<span th:each="country:${countries}" th:remove="tag">
<option th:value="${country}" th:text="${country}"></option>
</span>