c:forEach 標籤中遍歷map集合
阿新 • • 發佈:2019-01-07
java 後臺map 集合封裝
List<RoleRight> list = rrmapper.selectByROID(String.valueOf(role)); Map<String, List<Right>> map = new HashMap<String, List<Right>>(); List<Right> rights = new ArrayList<Right>(); //一級選單 for (RoleRight li : list){ Right right = rightmapper.selectByPrimaryKey(li.getRid()); System.out.println(right.getRname()+";;"+right.getPid() + ";;"+right.getRid()); if(right.getPid().equals("0")){ rights.add(right); //一級選單 } } //二級選單 for(Right ri : rights){ List<Right> ris = new ArrayList<Right>(); String rid = ri.getRid(); for (RoleRight li : list){ Right right = rightmapper.selectByPrimaryKey(li.getRid()); System.out.println(right.getRname()+";;"+right.getPid() + ";;"+right.getRid()); if(rid.equals(right.getPid())){ ris.add(right); } } map.put(ri.getRname(), ris); } request.setAttribute("map", map);
jsp 頁面用<c:foreach>遍歷迴圈
<c:forEach items="${map}" var="item" varStatus="go">
${go.count}
${item.key}
<c:forEach items="${item.value}" var="i">
${i.rname}
</c:forEach>
</c:forEach>
<div class="panel panel-success leftMenu"> <c:forEach items="${map}" var="item" varStatus="go"> <div class="panel-heading " id="collapseListGroupHeading${go.count}" data-toggle="collapse" data-target="#collapseListGroup${go.count}" role="tab"> <h4 class="panel-title "> <i class="glyphicon glyphicon-picture"></i> ${item.key} <span class="glyphicon glyphicon-chevron-down right"></span> </h4> </div><!-- class="panel-collapse collapse in" 開啟狀態 --> <div id="collapseListGroup${go.count}" class="panel-collapse collapse in" role="tabpanel" aria-labelledby="collapseListGroupHeading${go.count}"> <ul class="list-group"> <c:forEach items="${item.value}" var="i"> <li class="list-group-item"> <!-- 利用data-target指定URL --> <button class="menu-item-left" data-target="test2.html" onclick="loadPage('<%=basePath%>${i.rurl}')"> <span class="glyphicon glyphicon-triangle-right"></span> ${i.rname} </button> </li> </c:forEach> </ul> </div> </c:forEach> </div><!--panel end-->