- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
从 Controller 中,我返回了一个包含对象列表的对象。我想在下拉列表中显示这些对象列表,没有预先选择(或默认值,即“选择菜肴”),但下拉列表显示为列表中预先选择的最后一个值。
Controller :
@GetMapping(path = "/createOrder")
public ModelAndView displayOrder(OrderFormDetails order) {
ModelAndView mav = new ModelAndView();
mav.addObject("order", orderService.displayOrder());
mav.setViewName("createOrder");
return mav;
}
型号:
public class OrderFormDetails {
@NotEmpty(message = "*Please provide your name")
private String name;
@NotEmpty(message = "*Please provide your address")
private String address;
private List < Dish > dishes;
查看:
<select class="form-control" th:field="*{dishes}" id="dropOperator">
<option value="" selected="selected">Sélect dish</option>
<option th:each="dish, itemStat : *{dishes}" th:value="*{dishes[__${itemStat.index}__].id}" th:text="*{dishes[__${itemStat.index}__].title}">
</option>
</select>
我尝试了多种技巧,但没有一个奏效。谢谢...
最佳答案
通常您不想在一个字段中将可能的选项和选定的选项混合在一起(正如您显然所做的那样)。您需要做的就是将这些事情解耦。可能的步骤可能会有所帮助:
OrderFormDetails
其作用类似于表单支持 bean,它应该包含所选值的占位符 ( Dish.id
) 而不是 List
与可能的菜肴。更改您的OrderFormDetails
以下内容:public class OrderFormDetails {
@NotEmpty(message = "*Please provide your name")
private String name;
@NotEmpty(message = "*Please provide your address")
private String address;
private T selectedDish;
// getters, setters, rest of the class omitted
...哪里T
是分配给 Dish.id
的类型字段。
displayOrder
方法:mav.addObject("dishes", getDishes());
...哪里getDishes()
返回List<Dish>
包含所有菜肴,可供用户选择。
<select class="form-control" th:field="*{selectedDish}" id="dropOperator">
<option value="" selected="selected">Sélect dish</option>
<option th:each="dish : ${dishes}" th:value="${dish.id}" th:text="${dish.title}">
</option>
</select>
仅此而已。 documentation中也展示了这种方法。 -th:field
上<select>
level 指的是表单支持 bean 的字段,而 <option>
元素是从单独的集合创建的,提供为 model attribute .
关于java - 没有选择的 Thymeleaf 选项,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/56350097/
我正在使用 Gunicorn 为 Django 应用程序提供服务,它工作正常,直到我将其超时时间从 30 秒更改为 900000 秒,我不得不这样做,因为我有一个用例需要上传和处理一个巨大的文件(过程
我有一个带有非常基本的管道的Jenkinsfile,它可以旋转docker容器: pipeline { agent { dockerfile { args '-u root' } } stag
在学习 MEAN 堆栈的过程中,我遇到了一个问题。每当我尝试使用 Passport 验证方法时,它都不会返回任何响应。我总是收到“localhost没有发送任何数据。ERR_EMPTY_RESPONS
在当今的大多数企业堆栈中,数据库是我们存储所有秘密的地方。它是安全屋,是待命室,也是用于存储可能非常私密或极具价值的物品的集散地。对于依赖它的数据库管理员、程序员和DevOps团队来说,保护它免受所
是否可以创建像图片上那样的边框?只需使用 css 边框属性。最终结果将是没 Angular 盒子。我不想添加额外的 html 元素。我只想为每个 li 元素添加 css 边框信息。 假设这是一个 ul
我是一名优秀的程序员,十分优秀!