list合并單元格
1,在今天整理代碼的時候,發現原來的一段代碼,前臺合并單元格。
需要在后端,原來的列表基礎上,再增加一層。
- List<CASEListVO> list2 = super.doFind(hql.toString(), params.toArray(), currPage, pageSize);
- ArrayList<List<CASEListVO>> linkedList = new ArrayList<List<CASEListVO>>();
- List<String> keyList = new ArrayList<String>();
- for (CASEListVO vo : list2)
- {
- String key = vo.getItemCode();
- List<CASEListVO> tempList = new ArrayList<CASEListVO>();
- if (keyList.indexOf(key) == -1)
- {
- keyList.add(key);
- }
- else
- {
- continue;
- }
- for (CASEListVO vo1 : list2)
- {
- if (vo1.getItemCode().endsWith(key))
- {
- tempList.add(vo1);
- }
- }
- linkedList.add(tempList);
- }
- page.setList(linkedList);//返回的列表
頁面上操作,struts2
- <s:iterator value="page" id="list">
- <c:forEach var="recordList" items="${list}" varStatus="varStatus">
- <c:forEach var="record" items="${recordList}" varStatus="status">
- <tr>
- <td>
- <input name="selectIds" type="checkbox" value="${record.ltVo.listTmpId}"
- oldValue="${record.estTmpId }" />
- </td>
- ${status.index }--
- <%=((List) pageContext.getAttribute("recordList")).size()%>
- <c:if test="${status.index eq 0}">
- <td rowspan="<%=((List) pageContext.getAttribute("recordList")).size()%>" style="width: 240px;text-align: center;">
- ${record.listName}
- </td>
- </c:if>
- <td style="text-align: center;width:200px;">
- ${record.itemCode}
- </td>
- <td style="text-align: center;width: 200px;">
- ${record.projectName}
- </td>
- <td style="text-align: right;width: 200px">
- <fmt:formatNumber value="${record.rate}" pattern="##0.00" />
- </td>
- </tr>
- </c:forEach>
- </c:forEach>
- </s:iterator>
這樣根據code在頁面上就會顯示分組合并單元格的效果。
posted on 2011-10-17 14:44 agun 閱讀(591) 評論(0) 編輯 收藏 所屬分類: java web