foreach循环遍历出的radio框如何传递到后台controller层

AnthonyChenny 2017-10-31 07:20:55
用的框架写的,前台遍历出多个radio框,我现在想传到controller层,cotroller参数该怎样接受呢?

<form action="${ctx}/answer/insert" id="frm">
<input type="text" value="${user.getId()}" name="stuid" style="display:none"/>
<!--选择题-->
<c:if test="${selectionpapers.size()!=0}">
<div class="xuanzhe">
<div style="font-size: 22px; margin-top: 30px; color: #2b669a">选择题</div>
<ol>
<c:forEach items="${selectionpapers}" var="selectionpapers"
varStatus="selections">
<li style="font-size: 24px">
<div>
<h3>${selectionpapers.selection.stitle}</h3>
<table class="daan">
<tr>
<input type="text" name="selectionid" style="display:none" value="${selectionpapers.selection.id}"/>
<td><input type="radio"
name="selectionanswer<c:out value="${selections.count}"></c:out>"
value="A" /> <span>A:${selectionpapers.selection.selecta}</span>
</td>
<td><input type="radio"
name="selection<c:out value="${selections.count}"></c:out>"
value="B" /> <span>B:${selectionpapers.selection.selectb}</span>
</td>
<td><input type="radio"
name="selection<c:out value="${selections.count}"></c:out>"
value="C" /> <span>C:${selectionpapers.selection.selectc}</span>
</td>
<td><input type="radio"
name="selection<c:out value="${selections.count}"></c:out>"
value="D" /> <span>D:${selectionpapers.selection.selectd}</span>
</td>
</tr>
</table>
</div>
</li>
</c:forEach>
</ol>
</div>
</c:if>
...全文
756 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
大大的大土豆 2020-09-16
  • 打赏
  • 举报
回复
JSP页面如下: Controller层打码如下:
qq_33459936 2018-05-14
  • 打赏
  • 举报
回复
前端代码是: <c:forEach items="${choiceList}" var="c"> <h1>选择题<%out.println(a++);%></h1> <p>${c.question}</p> <input type="radio" name="choiceResult${c.id}" value="A" class="answer" />${c.answerOne} <input type="radio" name="choiceResult${c.id}" value="B" class="answer" />${c.answerTwo} <input type="radio" name="choiceResult${c.id}" value="C" class="answer" />${c.answerThree} <input type="radio" name="choiceResult${c.id}" value="D" class="answer" />${c.answerFour} <hr class="clear" /> </c:forEach> struts2后台怎么获取选中的答案?求解大神
qq_33459936 2018-05-14
  • 打赏
  • 举报
回复
请问用的是Struts2框架怎么实现这个功能呢?
AnthonyChenny 2017-11-02
  • 打赏
  • 举报
回复
此问题已解决,使用了枚举,我把jsp代码稍修改,radio的name后面跟着题目的id,在controller层中将两者分开,至于楼上其他给的建议我也试过,拿到的参数在后台操作比较复杂,所以没有用!下面是代码:
Enumeration<String> parameterNames = request.getParameterNames();
		while(parameterNames.hasMoreElements()){
			String param = parameterNames.nextElement();
			if(param.startsWith("selectionanswer")){
				String id = param.substring("selectionanswer".length());   //选择题id
				String answer = request.getParameter(param);               //选择题答案
AnthonyChenny 2017-11-01
  • 打赏
  • 举报
回复
引用 4楼maradona1984 的回复:
跟后端框架有关,跟后端选择接收参数的方式有关(ajax/form提交),跟你后端数据结构有关
form提交 后段框架用的springmvc 我controller层参数用的数组接受的,debug获取不到值
AnthonyChenny 2017-11-01
  • 打赏
  • 举报
回复
引用 1楼fring2012 的回复:
用ajax,先定义一个字符串数组,数组下标代表题号,数组元素代表答案。jquery拿到所有radio得innerHTML一个一个赋值给数组。然后进行json编码再传到controller层
能不能写个例子,我是个新手不太会写.
maradona1984 2017-11-01
  • 打赏
  • 举报
回复
跟后端框架有关,跟后端选择接收参数的方式有关(ajax/form提交),跟你后端数据结构有关
济南大飞哥 2017-11-01
  • 打赏
  • 举报
回复
拼接字符串,后台再切开。
新铺村长 2017-11-01
  • 打赏
  • 举报
回复
引用 1 楼 fring2012 的回复:
用ajax,先定义一个字符串数组,数组下标代表题号,数组元素代表答案。jquery拿到所有radio得innerHTML一个一个赋值给数组。然后进行json编码再传到controller层
+1
广寒月蛮兔 2017-11-01
  • 打赏
  • 举报
回复 1
用ajax,先定义一个字符串数组,数组下标代表题号,数组元素代表答案。jquery拿到所有radio得innerHTML一个一个赋值给数组。然后进行json编码再传到controller层

67,513

社区成员

发帖
与我相关
我的任务
社区描述
J2EE只是Java企业应用。我们需要一个跨J2SE/WEB/EJB的微容器,保护我们的业务核心组件(中间件),以延续它的生命力,而不是依赖J2SE/J2EE版本。
社区管理员
  • Java EE
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧