如何获取c:forEach的值
1
2
3
4
5
6
|
< c:forEach items = "${users}" var = "u" > < label > < input name = "id" type = "checkbox" value = "${u.id } " /> ${u.username } < br /> </ label > </ c:forEach > |
前端是多选的,点击选中的对象,然后对象的id往后台传;
后台是在springmvc的controller中使用request.getParameter("id")获取传过来的id。每次只能取一个,要取到选中的多个;
请教怎么做呢?
1
|
String id[] = request.getParameterValues( "id" ); |
就行啦~
springmvc向jsp传值以及c:foreach说明
在方法名里添加参数HttpServletRequest request,将要传的值添加到request里:request.setAttribute("list",list);
如果list为单个值,只要在jsp里${list}就可以了,如果是数组的话,就要用到遍历:引入
1
|
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>标签 |
用foreach遍历:
1
2
3
4
|
< c:forEach var = "list" items = "${list}" > < span >${list.id}</ span > < span >${list.name}</ span >< br /> </ c:forEach > |
如果要横向显示的话:
1
2
3
4
5
6
7
8
|
< tr > < c:forEach var = "list" items = "${list}" > < td > < span >${list.id}</ span > < span >${list.name}</ span >< br /> </ td > </ c:forEach > </ tr > |
关于c:foreach:
1
2
3
4
|
< c:forEach var = "每个变量名字" items = "要迭代的list" varStatus = "每个对象的状态" begin = "循环从哪儿开始" end = "循环到哪儿结束" step = "循环的步长" > 内容 </ c:forEach > |
-
var
:要迭代的list的别名 -
varStatus
:迭代变量的名称,用来表示迭代的状态,可以访问到迭代自身的信息 -
begin
:如果指定了items,那么迭代就从items[begin]开始进行迭代;如果没有指定items,那么就从begin开始迭代。它的类型为整数。 -
end
:如果指定了items,那么就在items[end]结束迭代;如果没有指定items,那么就在end结束迭代。它的类型也为整数。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持服务器之家。
原文链接:https://blog.csdn.net/carl_jiang/article/details/53585893