Boucle à travers une carte avec JSTL [dupliquer]

cette question a déjà une réponse ici:

je cherche à avoir une boucle JSTL à travers un Map<String, String> et afficher la valeur de la clé et sa valeur.

Par exemple, j'ai un Map<String, String> qui peut avoir n'importe quel nombre d'entrées, je voudrais boucler cette carte en utilisant JSTL et la sortie à la fois la clé et sa valeur.

je sais comment accéder à la valeur en utilisant la clé, ${myMap['keystring']} , mais comment accéder à la clé?

117
demandé sur blackpanther 2010-05-17 14:44:12

2 réponses

comme ceci:

<c:forEach var="entry" items="${myMap}">
  Key: <c:out value="${entry.key}"/>
  Value: <c:out value="${entry.value}"/>
</c:forEach>
263
répondu cletus 2010-05-17 10:48:14

vous pouvez faire une boucle à travers une carte de hachage comme celle-ci

<%
ArrayList list = new ArrayList();
TreeMap itemList=new TreeMap();
itemList.put("test", "test");
list.add(itemList);
pageContext.setAttribute("itemList", list);                            
%>

  <c:forEach items="${itemList}" var="itemrow">
   <input  type="text"  value="<c:out value='${itemrow.test}'/>"/>
  </c:forEach>               

pour plus de fonctionnalités JSTL, regardez ici

4
répondu sayan 2015-07-02 17:36:25