小编Ble*_*zer的帖子

在编辑时选择百日咳多重

我完全改变了这个问题,因为它的一部分 Avnish的帮助下得到了回答!汤姆把我送到了正确的方向,谢谢汤姆!

我的问题是我不知道如何告诉Thymeleaf在编辑时预先选择对象元素.

让我演示给你看:

看起来像这样

此解决方案有效:

<select class="form-control" id="parts" name="parts" multiple="multiple">
    <option th:each="part : ${partsAtribute}"
            th:selected="${servisAttribute.parts.contains(part)}"
            th:value="${part.id}"
            th:text="${part.name}">Part name</option>
</select>
Run Code Online (Sandbox Code Playgroud)

我试过这个:

<select class="form-control" th:field="*{parts}" multiple="multiple">
    <option th:each="part : ${partsAtribute}"
            th:field="*{parts}"
            th:value="${part.id}"
            th:text="${part.name}">Part name</option>
</select>
Run Code Online (Sandbox Code Playgroud)

不工作.我也试过这个:

<select class="form-control" th:field="*{{parts}}" multiple="multiple">
    <option th:each="part : ${partsAtribute}"
            th:field="*{parts}"
            th:value="${part.id}"
            th:text="${part.name}">Part name</option>
</select>
Run Code Online (Sandbox Code Playgroud)

也没用.我试过th:field="*{parts}"从选项标签中删除,结果相同..

如果我改变th:value${part}它的工作原理,但随后它并没有发回的ID字符串如[2,4,5,6,...],但Part像实例[第@ 43b45j,部分@ we43y7,...] ... .

更新:我刚刚注意到,如果只选择了一个部分,这是有效的:

<select class="form-control" th:field="*{parts}" multiple="multiple">
    <option th:each="part : ${partsAtribute}"
            th:field="*{parts}"
            th:value="${part.id}"
            th:text="${part.name}">Part name</option>
</select>
Run Code Online (Sandbox Code Playgroud)

如果选择了多个部件,则不起作用......

edit selected option thymeleaf

15
推荐指数
2
解决办法
3万
查看次数

标签 统计

edit ×1

option ×1

selected ×1

thymeleaf ×1