【问题标题】:How can I use a list of object in the model to automatically populate the options of a select in Thymeleaf view?如何使用模型中的对象列表自动填充 Thymeleaf 视图中的选择选项?
【发布时间】:2015-11-10 12:31:16
【问题描述】:

我正在开发一个使用 Thymeleaf 作为视图的 Spring MVC 应用程序。

我是 Thymeleaf 的新手,遇到以下问题。

在进入视图的这个阶段,我可以选择哪些选项值被硬编码到代码中,如下所示:

<select  id="selReg" class="form-control">
    <option value="" >--SELEZIONARE UN'AREA--</option>  
    <option value="areaUmanistica" >Area Umanistica</option>
    <option value="areaLinguistica" >Area Linguistica</option>
    <option value="areaScientifica" >Area Scientifica</option>
    <option value="areaPsicoMotoria" >Area Psico-Motoria</option>
</select>

现在,在我的控制器中,我使用服务检索 Tad1005Tipodisciplina 对象列表,并将此列表放入模型中。

List<Tad1005Tipodisciplina> listaTipoDisciplina = tipoDisiplinaService.getListaTipoDisciplina();

model.addAttribute("listaTipoDisciplina", listaTipoDisciplina);

这个Tad1005Tipodisciplina类包含这个字段:

private String desTipDis;

我想在我的视图中使用它来动态地显示上一个选择的内容。

如何使用这个放入模型的列表来动态填充我的选择选项?

【问题讨论】:

    标签: spring spring-mvc thymeleaf


    【解决方案1】:

    您需要在 select 语句中使用 th:each 遍历您的列表。在这里您可以定义一个变量来表示列表中的每个对象,然后您可以在每个选项标签中使用它,如下所示:

    <select id="selReg" class="form-control" th:each="object: ${listaTipoDisciplina}" th:field="*{listaTipoDisciplina}">
            <option th:value="${listObject.desTipDis}" th:text="${object.desTipDis}"></option>
        </select>
    

    /编辑:一分钟太晚了:)

    【讨论】:

      【解决方案2】:

      自己解决,这样:

      <select  id="selReg" class="form-control">
          <option value="" >--SELEZIONARE UN'AREA--</option>  
          <option th:each="tipoDisciplina: ${listaTipoDisciplina}" 
                  th:value="${tipoDisciplina.codTipDis}" 
                  th:text="${tipoDisciplina.desTipDis}">
          </option>
      </select>
      

      发布是因为将来可能对某人有用

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 2016-01-18
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2018-09-12
        • 1970-01-01
        • 2019-09-03
        相关资源
        最近更新 更多