Form表单如何可以传递多个值传递List数组对象到后台的解决办法
举例说明:
后台有一个对象 User ,结构如下:
后台有一个对象 User ,结构如下:
public class User{
private String username;
private List<PhotoDo> photo;
..get ....set.....
}
public class PhotoDo{
private String id;
private String name;
...get...set...
}
Controller中接受方法 getUser
@reqeustMapping("/getUser")
public void getUser(User user){
...实现方法...
}
前台Form这么写:
<form>
<input type="text" name="username" aciton="..">
<input type="text" name="photo[0].id">
<input type="text" name="photo[0].name">
<input type="text" name="photo[1].id">
<input type="text" name="photo[1].name">
<input type="text" name="photo[2].id">
<input type="text" name="photo[2].name">
</form>
这里下标可以用var = status-1来解决
第二个例子:
对象Cltc和list实体类
package com.ABC.pojo;
import java.util.Date;
public class Cltc {
private Integer id;
private Integer classid;//班级id
private Integer teacherid;//教师id
private Integer courseid;//课程id
private Date time;//排课时间
private Date start;//开始上课时间
private Date end;//结束上课时间
private Classinfo classinfo;//班级 排课状态和 结课状态 入学时间
public Classinfo getClassinfo() {
return classinfo;
}
public void setClassinfo(Classinfo classinfo) {
this.classinfo = classinfo;
}
public Integer getId() {
return id;
}
public void setId(Integer id) {
this.id = id;
}
public Integer getClassid() {
return classid;
}
public void setClassid(Integer classid) {
this.classid = classid;
}
public Integer getTeacherid() {
return teacherid;
}
public void setTeacherid(Integer teacherid) {
this.teacherid = teacherid;
}
public Integer getCourseid() {
return courseid;
}
public void setCourseid(Integer courseid) {
this.courseid = courseid;
}
public Date getTime() {
return time;
}
public void setTime(Date time) {
this.time = time;
}
public Date getStart() {
return start;
}
public void setStart(Date start) {
this.start = start;
}
public Date getEnd() {
return end;
}
public void setEnd(Date end) {
this.end = end;
}
@Override
public String toString() {
return "Cltc [id=" + id + ", classid=" + classid + ", teacherid=" + teacherid + ", courseid=" + courseid
+ ", time=" + time + ", start=" + start + ", end=" + end + ", classinfo=" + classinfo + "]";
}
}
/************************************************/
package com.ABC.vo;
import java.util.List;
import com.ABC.pojo.Cltc;
public class CltcFormVo {
private List<Cltc> cltcList;
public List<Cltc> getCltcList() {
return cltcList;
}
public void setCltcList(List<Cltc> cltcList) {
this.cltcList = cltcList;
}
}
controller层
@reqeustMapping("paike")
public void getCltcFormVo(CltcFormVo cltcFormVo){
List<Cltc> cltcList = cltcFormVo.getCltcList();
...实现方法...
}
jsp页面的信息:
<div class="panel panel-default">
<div class="panel-heading">排课信息</div>
<table id="stuTable" class="table table-hover table-striped table-bordered" border="1">
<tr>
<th class="text-center" style="width:50px">顺序</th>
<th class="text-center">课程</th>
<th class="text-center">老师</th>
<th class="text-center" style="width:200px" >开始时间</th>
<th class="text-center" style="width:200px" >结束时间</th>
</tr> <!--页面的接收信息-->
<!--注意这里的
[status-1]相当于从0开始往下循环
cltcList[status-1]中的cltcList必须和CltcFormVo中的
private List<Cltc> cltcList;
cltcList一样
--> <c:forEach items="${courseList }" var="course" varStatus="status">
<input type="hidden" id="classid" name="cltcList[${status.count-1 }].classid" value="${classinfo.id }">
<input type="hidden" id="time" name="cltcList[${status.count-1 }].time" value="2018-09-09" />
<tr>
<td id="count" class="text-center">${status.count}</td>
<input type="hidden" id="courseid" name="cltcList[${status.count-1 }].courseid" value="${course.id }">
<td >${course.name }</td> <td>
<select class="form-control" id="teacherid" name="cltcList[${status.count-1 }].teacherid"> <option value="${course.teacher.id }">${course.teacher.name }</option> </select>
</td>
<td><input id="start" name="cltcList[${status.count-1 }].start" class="form-control" type="text" onclick="WdatePicker();"/></td>
<td><input id="end" name="cltcList[${status.count-1 }].end" class="form-control" type="text" onclick="WdatePicker();"/></td>
</tr> </c:forEach> <tr>
<td colspan="5" class="text-center">
<!-- onclick="window.location.href='/paike/cltc/paiKe?id=${cltc.id}'" --> <input id="save" type="button" class="btn btn-success" value="保存排课" />
<input id="cancel" type="button" class="btn btn-danger" value="取消排课" />
</td>
</tr>
</table>
</div>
Form表单如何可以传递多个值传递List数组对象到后台的解决办法的更多相关文章
- Form表单如何传递List数组对象到后台的解决办法(转)
举例说明: [后台有一个对象 User 一个PhotoDo对象],结构如下: public class User{ private String username; private List&l ...
- Liferay7 BPM门户开发之40: Form表单的Action到Render的数据传递
在Form提交后的变量,很多情况是要展现在jsp页面中,这时Action到Render的变量传递就非常有用. 例如,您在数据库中添加了学生的详细信息. 为了实现这一需求,先创建Form表单(学生的细节 ...
- 微信小程序:input输入框和form表单几种传值和取值方式
1.传值:index下标传值.页面navigator传值 1.index下标 实现方式是:data-index="{{index}}"挖坑及e.currentTarget.data ...
- php 处理 form 表单提交多个 name 属性值相同的 input 标签
一 问题 在公司的开发过程中,遇到了一个问题:如何处理 form 表单提交了多个 name 属性值相同的 input 标签?源码如下(源码是在 form 表单之中的): <!--{loop $a ...
- 使用form 表单 弹出登录框,只传递数据,不刷新界面
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/ ...
- js 取值&赋值-form表单
form表单元素介绍 CreateTime--2016年9月22日10:25:54 Author:Marydon <form> 表单元素. 表单中的元素: <input>表 ...
- ajax传递数组、form表单提交对象数组
在JSP页面开发中,我们常常会用到form表单做数据提交,由于以前一直只是使用form表单提交单个对象,只要表单文本域的name值和接收的对象的属性名一致,那么传值就没有什么问题.不过,在前几天的开发 ...
- form表单传递对象数组
ajax传递数组.form表单提交对象数组 在JSP页面开发中,我们常常会用到form表单做数据提交,由于以前一直只是使用 form表单提交单个对象,只要表单文本域的name值和接收的对象的属性名一致 ...
- .netCore2.0 WebApi 传递form表单
随着it的技术发展,目前越来越多的项目采用前后端分离的开发模式,通过webapi提供接口数据来进行交互 最近项目用的是.netCore WebApi,在最近的项目使用中发现一些问题,进行记录.个人简介 ...
随机推荐
- js限制上传文件的类型和大小
var maxsize = 6*1024*1024;//6M var errMsg = "上传的附件文件不能超过6M!!!"; var tipMsg = "您的浏览器暂不 ...
- Struts has detected an unhandled exception
这个问题是struts和jsp页面的配置之间产生了问题,就是struts里边的名字和jsp里用的名字不是同一个名字,所以无法识别,所以检查一下里边的命名.
- LdA笔记
LDA算法最初的论文使用的是变分EM方法训练(Variational Inference).该方法较为复杂,而且最后训练出的topic主题非全局最优分布,而是局部最优分布.后期发明了Collapsed ...
- HDU6027 Easy Summation 2017-05-07 19:02 23人阅读 评论(0) 收藏
Easy Summation Time Limit: 2000/1000 MS ...
- Andfix热修复技术使用
AndFix,全称是Android hot-fix.是阿里开源的一个Android热补丁框架,允许APP在不重新发版本的情况下修复线上的bug.支持Android 2.3 到 6.0. andfix的 ...
- 可移植类库无法使用async、await关键字
今天遇到了如题所示的问题,平台已经选择了.net 4.5了,可是就是编译不通过,await关键字下出现了红色下划线. 解决方法:安装一个Bcl的补丁包. https://www.nuget.org/p ...
- 通过Spring Session实现新一代的Session管理
长期以来,session管理就是企业级Java中的一部分,以致于我们潜意识就认为它是已经解决的问题,在最近的记忆中,我们没有看到这个领域有很大的革新. 但是,现代的趋势是微服务以及可水平扩展的原生云应 ...
- EasyUi TreeGrid/DataGrid getChecked BUG
问题描述 步骤一,选中左边树一个节点,然后出现相应的数据,选中进行保存.如,我选中了前4个节点,上图: 步骤二,我再选tree中第二个节点,进行相应的选中和取消选中treegrid中的节点,并保存. ...
- linux系统编程之信号(一):中断与信号
一,什么是中断? 1.中断的基本概念 中断是指计算机在执行期间,系统内发生任何非寻常的或非预期的急需处理事件,使得CPU暂时中断当前正在执行的程序而转去执行相应的事件处理程序,待处理完毕后又返回原来被 ...
- 双缓冲队列解决WPF界面卡死
工作中的项目,CS客户端会通过MQ接收前端设备发送的信息,之前测试的时候,由于测试的数据不大,没有进行压力测试,软件可以正常工作,随着项目现场设备数量的增加,CS客户端从MQ中订阅的数据量不断增加,最 ...