Thymeleaf 嵌套取map中的值 (用获取的值,作为key,获取map中的value)

weixin_47598176 2020-05-13 04:41:00
Thymeleaf 嵌套取map中的值 (用获取的值,作为key,获取map中的value)

<td th:text="${projectStatus.get(thisStatus)}"></td>
其中
projectStatus={1:"a",2:"b"} 是一个map
thisStatus=1
这样以上这样无法取到值"a",显示为空

<td th:text="${projectStatus[thisStatus]}"></td>
这样也是一样

<td th:text="${projectStatus[${thisStatus}]}"></td>
嵌套使用${}会报错

<td th:text="${projectStatus[1]}"></td>
直接输入1正常输出

有没有办法实现嵌套取值呢?
...全文
18622 11 打赏 收藏 转发到动态 举报
写回复
用AI写文章
11 条回复
切换为时间正序
请发表友善的回复…
发表回复
摆烂熊猫 2022-09-20
  • 打赏
  • 举报
回复 1

这样
${projectStatus['${thisStatus}']}
里面的使用__${xxx}__预处理,然后要加上单引号

摆烂熊猫 2022-09-20
  • 举报
回复 1
@摆烂熊猫 注意!!!: ${thisStatus} 前后要加双下划线,这个被转义掉了 没显示出来
qq_42863340 2022-11-15
  • 举报
回复
@摆烂熊猫 老哥的方法是对的
chunyong_023 2022-03-17
  • 打赏
  • 举报
回复

th:value="${empnmMap[toddab11.stomanexmnemp]}"

liutang9 2020-11-13
  • 打赏
  • 举报
回复
<td th:text="${projectStatus.get(thisStatus+'')}"></td>
qq_30264379 2020-09-23
  • 打赏
  • 举报
回复
这个应该是实体类查询出值是int 类型的,${projectStatus[thisStatus+'']} 这样应该就可以了
tanlzy 2020-09-17
  • 打赏
  • 举报
回复
<div class="box-name2" th:each="item,userStat:${skuSaleAttrNameHashJsonStr}">
<p th:text="${userStat.current.key}==${skuInfo?.id}?${userStat.current.value}:''"></p><!-- key-->
</div>我再用三元运算符判断选择输出
Ronetver 2020-09-08
  • 打赏
  • 举报
回复
兄弟,解决了吗,我和你的问题几乎一样一样的,有解决方案了吗?
lyhua361 2020-08-27
  • 打赏
  • 举报
回复 1
<td th:text="${projectStatus[${thisStatus}]}"></td>改成<td th:text="${projectStatus.get({thisStatus})}"></td>试试,去掉里面的$
  • 打赏
  • 举报
回复
插眼,遇到同样的问题,thymeleaf里$好像嵌套不了$
weixin_47598176 2020-05-13
  • 打赏
  • 举报
回复
有咩有大神解答下呢

61,111

社区成员

发帖
与我相关
我的任务
社区描述
层叠样式表(英文全称:Cascading Style Sheets)是一种用来表现HTML(标准通用标记语言的一个应用)或XML(标准通用标记语言的一个子集)等文件样式的计算机语言。
社区管理员
  • HTML(CSS)社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧