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,在最近的项目使用中发现一些问题,进行记录.个人简介 ...
随机推荐
- linux将程序扔到后台并获取程序的进程号
我们经常需要写一些执行时间较长的程序,但是如果在程序执行过程中超时了,有许多原因,可能是程序已经挂起了,这时就需要杀死这样的进程,则可以通过如下的命令执行: java -jar TestProcess ...
- Python初学者的捷径[译]
下面列出的都是这些年总结的Python的有用的知识点和一些工具.希望对你有所帮助! 交换变量值 x = 6 y = 5 x, y = y, x print x >>> 5 print ...
- day08(File类 ,字节流)
File类 构造方法 File(String path); FIle(String parent, String child); File(File parent, String child) ...
- hdu 5039 线段树+dfs序
http://acm.hdu.edu.cn/showproblem.php?pid=5039 给定一棵树,边权为0/1.m个操作支持翻转一条边的权值或者询问树上有多少条路径的边权和为奇数. 用树形df ...
- 洛谷P3066 [USACO12DEC]逃跑的Barn (线段树合并)
题目描述It's milking time at Farmer John's farm, but the cows have all run away! Farmer John needs to ro ...
- delphi 安卓程序如何读取外部配置文件
1)编辑一个config.txt文件,填写配置系统. 2)有外部加载文件时,安卓发布需要另行指定文件发布目录位置 比如加载config.txt需要在 首先利用Project->Deploymen ...
- 【算法30】从数组中选择k组长度为m的子数组,要求其和最小
原题链接:codeforce 267 Div2 C 问题描述: 给定长度为n的数组a[],从中选择k个长度为m的子数组,要求和最大. 形式描述为:选择$k$个子数组[$l_1$, $r_1$], [$ ...
- 【TypeScript】TypeScript 学习 5——方法
在 JavaScript 中,有两种方式定义方法. 1.命名的方法 function add(x,y){ return x+y; } 2.匿名方法 var myAdd = function(x,y) ...
- Mongodb 与 SQL 语句对照表
In addition to the charts that follow, you might want to consider the Frequently Asked Questions sec ...
- 在Azure DevOps Server (TFS) 中修改团队项目名称
概述 [团队项目]: 在Azure DevOps Server (原名TFS)中,团队项目(Team Project)是一个最基本的数据组织容器,包含了一个团队或者信息系统中的所有信息,包括源代码.文 ...