精华内容
下载资源
问答
  • 前端如何利用form表单传数组在写前端的时候碰到了传数组的问题,于是我利用form表单测试了一下,如何利用form表单传数组。Java后端的接收跟随前人的足迹摸索验证结论 在写前端的时候碰到了传数组的问题,于是我利用...

    在写前端的时候碰到了传数组的问题,于是我利用form表单测试了一下,如何利用form表单传数组。

    form表单的常用形式如下:

    <form action="http://192.168.43.158:8082/uploadImage"  method="post" enctype="multipart/form-data">
        <input type="file" name="filename" size="45"><br>
        <input type="submit" name="submit" value="submit">
    </form>
    
    

    根据我目前的需求:传数组

    <form action="http://192.168.43.158:8082/game/examination/addMul"  method="post" enctype="multipart/form-data">
        <form>
            <div class="form-control">
                books1:
                <input type="text" name="books[]" />
            </div>
            <br>
            <div class="form-control">
                books2:
                <input type="text" name="books[]" />
            </div>
            <input type="submit" value="Submit" />
        </form>
    </form>
    
    

    关于form表单,一个

    表示一行,所以写多个
    表示多行,在submit的时候就是一个数组了

    Java后端的接收

    关于后端我是用的SpringMvc,所以接收传值常用@RequestParam

    关于@RequestParam注解,赋值的过程在我看来更像是从map中取值(default key就是变量名),所以我还真不是很确定能取到值

    跟随前人的足迹

    网上有很多关于此的文章,我找了一个看起来比较靠谱的做法,套到我的代码中去

    @PostMapping("/addMul")
        public HashMap addMulQuestion(@RequestParam(value = "books[]", required = false) ArrayList<String> books) {
            System.out.println(books);
            return null;
        }
    
    

    确实有打印,说明此方法可行
    在这里插入图片描述

    摸索

    各位仔细回看一下代码会发现我的前端代码的name=“books[]”,而后端接收的value的name也是"books[]",那么我是否有理由猜测,其实根本没必要命名成数组,只要名字统一即可,在底层如果有value名字相同的就会自动封装成数组

    验证

    我将name改成books

    <form action="http://192.168.43.158:8082/game/examination/addMul"  method="post" enctype="multipart/form-data">
        <form>
            
            <div class="form-control">
                books1:
                <input type="text" name="books" />
            </div>
            <br>
            <div class="form-control">
                books2:
                <input type="text" name="books" />
    
            </div>
            <input type="submit" value="Submit" />
        </form>
    </form>
    
    

    后端也做相应的改变

    @PostMapping("/addMul")
        public HashMap addMulQuestion(@RequestParam(value = "books[]", required = false) ArrayList<String> books) {
    
    
            System.out.println(books);
    
            return null;
        }
    
    

    测试结果是:

    在这里插入图片描述

    • 我的猜想是对的

    为了进一步证实猜想,我用postman再一次验证了一下
    在这里插入图片描述
    在这里插入图片描述

    结论

    发送key相同的表单,@RequestParam接收会自动封装成数组

    原文链接https://blog.csdn.net/symuamua/article/details/104759182

    展开全文
  • 我很难弄清楚如何将值的数组传递给RequestParam中的java spring控制器方法.我的html表单如下:我的弹簧控制器如下:@RequestMapping(value="/send", method = RequestMethod.POST)public void sendMessage(String to...

    我很难弄清楚如何将值的数组传递给RequestParam中的java spring控制器方法.

    我的html表单如下:

    我的弹簧控制器如下:

    @RequestMapping(value="/send", method = RequestMethod.POST)

    public void sendMessage(String to[]) {

    for(String number: to) {

    System.out.println(number);

    }

    }

    但是,当我运行它时,它显示一个错误:

    … is not applicable for the arguments

    解决方法:

    问题在于您的输入仅仅是一个String字段,因此Spring会将其转换为String而不是String数组.

    一种解决方案是在表单中包含多个具有相同名称的输入. Spring自动创建该数组并将其传递给控制器​​.

    控制器中的相应方法为:

    public void foo(@RequestParam("number[]") List to) {

    for(String number : to) {

    System.out.println(number);

    }

    }

    标签:html,arrays,spring,java

    来源: https://codeday.me/bug/20191026/1939974.html

    展开全文
  • 举例说明:后台有一个对象 User ,结构如下:后台有一个对象 User ,结构如下:public class User{private String username;private List photo;..get ....set.....}public class PhotoDo{private String id;...

    举例说明:

    后台有一个对象 User ,结构如下:

    后台有一个对象 User ,结构如下:

    public class User{

    private String username;

    private List photo;

    ..get ....set.....

    }

    public class PhotoDo{

    private String id;

    private String name;

    ...get...set...

    }

    Controller中接受方法 getUser

    @reqeustMapping("/getUser")

    public void getUser(User user){

    ...实现方法...

    }

    前台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 cltcList;

    public List getCltcList() {

    return cltcList;

    }

    public void setCltcList(List cltcList) {

    this.cltcList = cltcList;

    }

    }

    controller层

    @reqeustMapping("paike")

    public void getCltcFormVo(CltcFormVo cltcFormVo){

    List cltcList = cltcFormVo.getCltcList();

    ...实现方法...

    }

    jsp页面的信息:

    排课信息
    顺序课程老师开始时间结束时间
    ${status.count}${course.name }

    ${course.teacher.name }

    展开全文
  • &lt;input type="text" data="form_data.mgr" ng-model="form_data.realName"...data:是真正给后台的参数,可以是数组。ng-model:可以直接绑定,可以直接显示在页面上。...

    <input type="text" data="form_data.mgr" ng-model="form_data.realName" ng-click="selLeader()">


    data:是真正传给后台的参数,可以是数组。

    ng-model:可以直接绑定,可以直接显示在页面上。

    展开全文
  • 题目描述从后台获取的多维数组,经过解析,形成一个多选框界面,经过多选提交,再将数据传回后台,但是传入的数据格式不一样我的格式系统需要的格式题目来源及自己的思路传回的格式要求为第一层json串不用处理 ...
  • 需要传递数组参数的情况,如果是一般的form表单,可以直接定义参数类型为List即可(不能定义为数组类型,否则只能得到一个null)。示例代码如下:@POST@Path("/user" )public Response createUser(@FormParam(...
  • RESTful 一种软件架构风格,设计...需要传递数组参数的情况,如果是一般的form表单,可以直接定义参数类型为List即可(不能定义为数组类型,否则只能得到一个null)。示例代码如下: @POST@Path("/user" )public Re...
  • 我们在项目中写表单的时候,一般name都
  • 背景:后端需要这种格式的数据,接口文档要求如下 ...我也是第一次见,后端说这叫,post一个表单数组,原来的项目里有现成的,参考如下 网上看,这种描述大致是?同名key传值? 解决方法 代码 ...
  • 我使用Ajax提交一个包含数组、文本字段和文件的多部分表单。因此,我将每个var附加到主数据中var attachments = document.getElementById('files');var data= new FormData();for (i=0; i< attachments.files....
  • 那么如果一个对象数组,要如何绑定呢? arr=[ {foo:1,bar:2}, {foo:1,bar2} ] //html中 <section v-for="(v,key) in arr"> <input v-model="arr[key].foo"> <input v-model="arr[key].bar"> ...
  • 假如有如下代码,页面有4个name均为pcode的复选框:百灵K歌果果乐园健身团测试后台当提交到后台时,无论是用submit直接提交表单,还是用jQuery的$('#edit_form').serialize()都是生成类似pcode=blkg&pcode=...
  • 什么时候前台页面会传数组给后台? 复选框标签 有两种接收方式 1、数组参数绑定 》》数组 (1)前台代码 多个复选框表单,并把复选框选中的内容,发给给服务器后台,服务器去接收。 demo01_array.jsp <%-- 页面会...
  • postman的操作:thinkphp5框架的input()方法会对特殊字符串进行转义,如:[ ], { } 等,这里也是坑了我很长时间。解决办法如下:其他方法:1.使用 htmlspecialchars_decode()htmlspecialchars() 转义 ...
  • 因为项目需要在一个表单里面提交多个对象,比较好的做法就是直接在控制器方法参数里一个数组。 由于Spring mvc框架在反射生成控制方法的参数对象的时候会调用这个类的getDeclaredConstructor方法来获得构造函数。 ...
  • PHP利用foreach接收表单传来的二维数组 HTML中的表单 这里我嵌入了一段php循环 Tips:格式不好看就右键格式化文档。vscode真香! <!DOCTYPE html> <!--HTML5表单--> <style type="text/css"> ...
  • 有的时候,经常需要从前台表单向后台传输一个数组或者List,但是经过试验发现后台用List的set方法并不能很好的接收,如下面这个例子: $("#confirm").button().click(function(){ var selectedUseIds = new ...
  • 通过表单向php后台多条数据,以关联数组方式呈现,废话不多说,代码附上: html表单代码,方式我设置为get: 1 <form action="php/cart.php" method="GET"> 2 <label for="mmm">数据1</label&...
  • Controller中接收同一form表单传来的不同的对象数组 今天在写东西的时候发现一个问题:一个前端内,同时只能提交一个form表单,但是难免会有同一个form表单中有不同表格的数据,那么在后端接收的时候就出现了问题 问题...
  • 实际情形是course creat(a) 和creat2(b)a页面点击按钮跳到b页面,b页面类似于提交表单,提交后返回a页面,a页面则多了一条数据用来展示以及删除,然后a页面再点按钮...此过程可以重复b页面var obj = new Object();...

空空如也

空空如也

1 2 3 4 5 ... 15
收藏数 294
精华内容 117
关键字:

表单传数组