0 0

关于jsp<c:forEach>问题5

有两个东西要在同一个循环里面遍历出来!代码如下:

public ModelAndView searchList(HttpServletRequest request, String keyword,String province, Integer city, Integer game)
			throws UnsupportedEncodingException {
		Map<String, List> ul = new LinkedHashMap<String, List>();
		// 查询容器
		Map<String, Object> searchParams = new HashMap<String, Object>();
		Map<String, Object> searchKeyword = new HashMap<String, Object>();
		Map<String, Object> recommend = new HashMap<String, Object>();
		Map<String, Object> provincesParams = new HashMap<String, Object>();
		Map<String, Object> zone1 = new HashMap<String, Object>();
		provincesParams.put("layer", SysZone.PROVINCE);
		
		List<SysZone> provinces = sysZoneService.getSysZoneListByParams(provincesParams, null, null);

		// 根据26个字母开头循环
		String words = "ABCDEFGHIJKLMNOPQRSTUVWXYZ";
		for (char ch : words.toCharArray()) {
			searchParams.clear();
			searchParams.put("nametype", ch);
			List<SysGame> list = sysGameService.getSysGameListByParams(searchParams, null, null);
			ul.put(String.valueOf(ch), list);
		}
		
		RequestUtils requestUtils = new RequestUtils(request);
		Integer pageNum = requestUtils.getInt("pageNum", 0);
		Integer pageSize = requestUtils.getInt("pageSize", 10);
		PageCommand pageCommand = new PageCommand();
		pageCommand.setPageNum(pageNum);
		pageCommand.setPageSize(pageSize);

		
		List<SunCompetition> list = null;
		
		if (StringUtils.isNotBlank(keyword)) {
			searchKeyword.put("name", keyword);
			searchParams.put("name", keyword);
			pageCommand.setTotal(sunCompetitionService.getCountSunCompetitionByParams(searchParams));
			pageCommand.reload();
			OrderCommand orderCommand = new OrderCommand();
			List<String> params = new ArrayList<String>();
			List<String> models = new ArrayList<String>();
			params.add("signendtime");
			params.add("createtime");
			models.add("desc");
			orderCommand.addOrders(params, models);
			list = sunCompetitionService.getSunCompetitionListByParams(searchKeyword, orderCommand, pageCommand);
			
		} else {
			
			searchKeyword.put("game", game);
			searchKeyword.put("province", province);
			searchKeyword.put("city", city);
				
			searchParams.put("province", province);
			searchParams.put("city", city);
			searchParams.put("game", game);
			
			pageCommand.setTotal(sunCompetitionService.getCountSunCompetitionByParams(searchParams));
			pageCommand.reload();
			OrderCommand orderCommand = new OrderCommand();
			List<String> params = new ArrayList<String>();
			List<String> models = new ArrayList<String>();
			params.add("signendtime");
			models.add("desc");
			orderCommand.addOrders(params, models);
			list = sunCompetitionService.getSunCompetitionListByParams(searchKeyword, orderCommand, pageCommand);
			
			for (SunCompetition comp : list) {
				SysZone province1 = sysZoneService.getSysZoneById(comp.getProvince());
				SysZone city1 = sysZoneService.getSysZoneById(comp.getCity());
				zone1.put("province1", province1.getName());
				zone1.put("city1", city1.getName());
				System.out.println(city1.getName());
			}
		}
		recommend.put("recommend", 1);
		List<SunCompetition> recommendList = sunCompetitionService.getSunCompetitionListByParams(recommend, null, null);
		return new ModelAndView("/competition/search")
				.addObject("provinces", provinces)
				.addObject("gameList", ul)
				.addObject("searchList", list)
				.addObject("recommendList", recommendList)
				.addObject("keyword", keyword)
				.addObject("page", pageCommand)
				.addObject("searchKeyword", searchKeyword)
				.addObject("zone1",zone1);
	}


jsp页面遍历 list 时我想同时遍历zone1   求大神解释
2013年5月27日 17:14

3个答案 按时间排序 按投票排序

0 0

为毛我看到这些 就想用ajax了?

2013年5月28日 12:32
0 0

看代码,你获取list是SunCompetition的集合,而zone1只是list最后一个SunCompetition的省名称和市名称???


不会是写错了吧?


我的理解你要遍历list并获取SunCompetition 的省、市名称???


按我的做法就是在SunCompetition中创建两个变量:provinceName、cityName;然后循环list获取provinceName、cityName并设置进去即可。


然后便利list就可获取provinceName、cityName

2013年5月28日 11:33
0 0

用两个并排的table可以么?

2013年5月28日 08:39

相关推荐

    c:forEach标签的使用祥解

    在JavaServer Pages (JSP) 开发中,`c:forEach`标签是Java Expression Language (EL) 和 JavaServer Pages Standard Tag Library (JSTL) 的一部分,它提供了一个方便的方式来迭代数组、集合、Map或其他可迭代的数据...

    JSTL标准标签库 <C:out>、<c:set>、<c:remove>和<c:catch>标记 <c:if>、<c:choose>、<c:when>和<c:otherwise>标记 <c:forEach>和<c:forTokens>标记

    1. `&lt;c:forEach&gt;`:用于遍历集合、数组或迭代对象,实现循环操作。 2. `&lt;c:forTokens&gt;`:对字符串进行分割,然后对每个分割出来的元素进行循环处理。 **使用JSTL的好处**: - 提高代码的可读性:通过使用XML样式的...

    c:foreach的各种用法

    在JSP(JavaServer Pages)开发中,`&lt;c:forEach&gt;` 是一个非常重要的标签,它属于JSTL(JavaServer Pages Standard Tag Library)的一部分,主要用于循环处理集合、数组等数据结构。相较于传统的JSP Scriptlets,使用...

    c标签-if-foreach-jar

    结合**jstl.jar**包,这个标签库提供了许多其他实用的标签,如`&lt;c:set&gt;`用于设置变量,`&lt;c:choose&gt;`、`&lt;c:when&gt;`和`&lt;c:otherwise&gt;`用于多条件判断等,极大地简化了JSP页面的逻辑处理,使得页面更加清晰,符合MVC...

    c标签遍历集合嵌套的List集合

    在JSP页面中,使用`c:forEach`标签遍历`map`: ```jsp &lt;c:forEach items="${map}" var="entry"&gt; &lt;option value="${entry.key}"&gt;${entry.value}&lt;/option&gt; &lt;/c:forEach&gt; ``` 这里,`${map}`代表从前端传过来的`Map`...

    JSP使用C标签时必须引入的jar包

    C标签库提供了一些类似于Java编程中的控制结构,例如`&lt;c:if&gt;`, `&lt;c:forEach&gt;`, `&lt;c:choose&gt;`, `&lt;c:set&gt;`等,这些标签能够帮助开发者更方便地在JSP页面上进行逻辑处理,而无需过多地编写脚本let或Java表达式。...

    JSP 标准标签库(c标签库)

    &lt;c:forEach items="${yourList}" var="item"&gt; ${item} &lt;/c:forEach&gt; ``` - **`&lt;c:remove&gt;`**: 用于删除一个变量。例如: ```jsp &lt;c:remove var="name"/&gt; ``` 3. **JSTL与EL(Expression Language)的配合**...

    数据库分页脚本 jsp

    &lt;c:forEach begin="1" end="${totalPages}" step="1" var="pageIndex"&gt; &lt;c:choose&gt; &lt;c:when test="${pageIndex eq pageNumber}"&gt; &lt;option value="${pageIndex}" selected="selected"&gt;${pageIndex}&lt;/option&gt; ...

    jsp中常见的一些标签应用

    - **带条件的遍历**:`&lt;c:forEach items="${arry1}" var="n" begin="3" end="5" step="2"&gt;`。其中`begin`、`end`和`step`分别表示开始位置、结束位置和步长。 #### `c:if` 标签 用于条件判断,仅当条件为真时才会...

    javaWeb练习题.docx

    - 动态Include使用`&lt;jsp:include&gt;`的page属性,每次请求都会检查包含文件的最新内容,适合包含动态生成的内容。 7. **HTTP请求转发与重定向**: - `RequestDispatcher.forward()`用于请求转发,客户端浏览器地址...

    JSP页面中利用C标签动态合并单元格

    在JSP页面中,我们可以用`&lt;c:forEach&gt;`遍历数据集,然后用`&lt;c:if&gt;`检查当前列是否与前一列相同。如果相同,那么就设置一个合并标志,同时在HTML中添加相应的`colspan`属性,告诉浏览器需要合并多少个列。 ```jsp ...

    JSP C标签引用

    List&lt;String&gt; names = new ArrayList&lt;&gt;(); names.add("张三"); names.add("李四"); request.setAttribute("names", names); %&gt; &lt;table border="1"&gt; &lt;c:forEach items="${names}" var="name"&gt; &lt;tr&gt; &lt;td&gt;${name...

    JSTL 标签库 jsp C 标签库

    - **Core(C)库**:包含了用于控制流程的基本标签,如`&lt;c:if&gt;`、`&lt;c:choose&gt;`、`&lt;c:forEach&gt;`等。 - **I18N(Internationalization,国际化)库**:用于处理国际化和本地化,如`&lt;fmt:formatNumber&gt;`、`&lt;fmt:message...

    jstl标签库

    - **迭代标签**:`&lt;c:forEach&gt;`、`&lt;c:forTokens&gt;`,实现循环遍历。 - **URL操作标签**:`&lt;c:import&gt;`、`&lt;c:param&gt;`、`&lt;c:url&gt;`、`&lt;c:redirect&gt;`,用于处理URL相关的操作。 **4. 使用JSTL的步骤** 1. 将JSTL的`....

    web开发必备:JSP标准标签库JSP的语法介绍及jsp页面导入标签方法.docx

    - 示例:`&lt;c:forEach items="${list}" var="item"&gt;...&lt;/c:forEach&gt;` - **`&lt;c:set&gt;`**:设置变量的值。 - 示例:`&lt;c:set var="varName" value="value"/&gt;` #### 2. 国际化标签库 (`&lt;fmt:*&gt;`) - **`&lt;fmt:message&gt;`*...

    jsp+servlet的C标签jar包和使用方法

    首先,`C标签`是指Tomcat的JSTL(JavaServer Pages Standard Tag Library)的一部分,它提供了类似于Java控制结构的标签,如`&lt;c:if&gt;`, `&lt;c:forEach&gt;`, `&lt;c:choose&gt;`等。这些标签使得开发者可以使用更加简洁的XML语法...

    JSP_标准标签库_

    - **迭代标签**:如`&lt;c:forEach&gt;`和`&lt;c:forTokens&gt;`,用于循环遍历集合或字符串。例如: ```jsp &lt;c:forEach var="number" items="${numbers}"&gt; ${number} &lt;/c:forEach&gt; ``` 2. **国际化和格式化标签库**(I18...

    JSTL详解--jsp页面编写规范详解

    - **&lt;c:forEach&gt;**:用于循环遍历集合或数组。 - **&lt;c:forTokens&gt;**:用于按指定分隔符遍历字符串中的元素。 - **&lt;c:import&gt;**:用于在JSP页面中包含其他资源。 - **&lt;c:url&gt;**:用于生成URL。 - **&lt;c:redirect&gt;**:...

    jsp实用编程百例.rar_jsp_jsp编程

    - JSTL核心标签库:提供循环,条件判断,XML处理等功能,如`&lt;c:forEach&gt;`,`&lt;c:if&gt;`等。 - JSTL函数库:如fmt:格式化日期,sql:数据库操作等。 4. **Servlet与JSP协作** - Servlet的service()方法:接收并响应...

    jsp标准标签标准动作

    Core库是JSTL中最基本的库,它包含了许多与HTML元素相似的功能标签,如`&lt;c:out&gt;`、`&lt;c:set&gt;`、`&lt;c:if&gt;`、`&lt;c:choose&gt;`、`&lt;c:when&gt;`、`&lt;c:otherwise&gt;`、`&lt;c:forEach&gt;`等。 - `&lt;c:out&gt;`:用于安全地输出数据,防止...

Global site tag (gtag.js) - Google Analytics