如何获取c:forEach的值
<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。每次只能取一个,要取到选中的多个;
请教怎么做呢?
String id[] = request.getParameterValues("id");
就行啦~
springmvc向jsp传值以及c:foreach说明
在方法名里添加参数HttpServletRequest request,将要传的值添加到request里:request.setAttribute("list",list);
如果list为单个值,只要在jsp里${list}就可以了,如果是数组的话,就要用到遍历:引入
<%@ taglib prefix="c" uri="http://java.sun.com/jsp/jstl/core" %>标签
用foreach遍历:
<c:forEach var="list" items="${list}">
<span>${list.id}</span>
<span>${list.name}</span><br/>
</c:forEach>
如果要横向显示的话:
<tr>
<c:forEach var="list" items="${list}">
<td>
<span>${list.id}</span>
<span>${list.name}</span><br/>
</td>
</c:forEach>
</tr>
关于c:foreach:
<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结束迭代。它的类型也为整数。
以上为个人经验,希望能给大家一个参考,也希望大家多多支持编程网。