1

我需要Map <String, String>根据条件从 jsp 中的类型映射中检索值。条件是将映射键与变量进行比较,如果键等于变量,则显示与该键有关的值。这就是我正在做的事情:

<c:if test="${ myMap.key eq myVariable }">
<jsp:getvalueof var="testVariable" value = "${ myMap.value }" />
</c:if>

我期望得到的是,如果 myMap.key 等于 myVariable,我应该在“test”变量中获得与该键有关的值。

但这东西行不通。请问有人知道吗?

提前致谢 :)

4

3 回答 3

3

您可以直接访问地图并将值放入“测试”变量中:

<c:set var="test" value="${myMap[myVariable]}"/>
于 2013-02-20T12:43:57.293 回答
0
//use like this in jsp
<%
String val;
for(String key : myMap.keyset()){
    if(key.equals(myVariable )){
        val = myMap.get(key);
    }
}
%>
//on js use like this
var test = '<%=val%>';
于 2013-02-20T12:37:58.453 回答
0

由于您想根据条件从地图中检索值,因此可以改用三元运算符。试试这个 :

<c:set var="testVariable" value='${ myMap.key eq myVariable ? myMap[myVariable] : "defaultValue" }'/>
于 2013-02-20T13:00:33.727 回答