开发者社区> 问答> 正文

jstl el 根据动态key 获取map的value?报错

使用velocity时,是可以使用嵌套来获取map的value的,如:$map.get(key) 。

但是EL表示式是不能直接使用函数,也不能使用嵌套的,否则会报错。

EL表达式取map的value,${map[key]},但是若key是动态获取的,你若想这样${map[${key}]} 获取value就会报错的:。

可以使用下面的方式:

 <c:forEach begin="1" end="3" var="key" varStatus="vs">
       <c:set var="longKey" value="${vs.index+0 }"  />
        <a ${longKey} -- ${m[longKey]}</a>
  </c:forEach>

 这样就可以正确获取了,还是就是map的key最好定义成Long。

展开
收起
爱吃鱼的程序员 2020-06-14 22:55:17 733 1
1 条回答
写回答
取消 提交回答
  • https://developer.aliyun.com/profile/5yerqm5bn5yqg?spm=a2c6h.12873639.0.0.6eae304abcjaIB

    谢谢,专门注册个帐号来感谢的

    十分感谢!很好用

     

    <spanstyle="width:200px"><c:setvar="key"value="${constructionValueList[0].major}"/>${majorMap[key]}</span>
    2020-06-14 22:55:34
    赞同 展开评论 打赏
问答地址:
问答排行榜
最热
最新

相关电子书

更多
低代码开发师(初级)实战教程 立即下载
冬季实战营第三期:MySQL数据库进阶实战 立即下载
阿里巴巴DevOps 最佳实践手册 立即下载