第一种方法直接用serialize()方法

function insert(){
        $.ajax({
            type:"POST",
            url:"${pageContext.request.contextPath}/order/insert",
            data : $("#fom").serialize(),
            success  :function (res) {
                console.log(res);
            error:function () {
            }
        });
}

后台springmvc用对象参数接收 可以自动转换为对象,需要注意的就是form表单中的name要和对象中的参数名相同

@RequestMapping(value = "/insert",method = RequestMethod.POST)
        public String insert( Order order){
           int result=this.orderSerivce.insert(order);
           if(result==1){
               System.out.println("添加失败");
               return "101";
           }
           return "100";
        }

第二种是用JSON.stringify()将json对象转化为json对象的字符串传递

function insert(){
        $.ajax({
            type:"POST",
            url:"${pageContext.request.contextPath}/user/insert",
            async:false,
            data :JSON.stringify({
                username : $("input[name='username']").val(),
                password: $("input[name='password']").val(),
                role : {
                    id : "",
                    name: $("select[name='name']").val()
                }
            }),
            contentType: "application/json;charset=UTF-8",
          /*如果不写这个,仔细看后台会出现Content type 'application/x-www-form-urlencoded;charset=UTF-8' not supported   */
            dataType:"json",
            success  :function (res) {
                console.log(res);
                if(res==100){
                    $("#msg").html("<font size='60px'> success </font>").show(700).delay(3000).hide(500);
                }else {
                    $("#msg").html("<font size='60px'>  fail </font>").show(700).delay(3000).hide(500);
                }
                window.location.href="http://localhost:8080/user/findall?page=1"
            },
            error:function () {
                $("#msg").html("<font size='60px'>  fail </font>").show(700).delay(3000).hide(500);
                window.location.href="http://localhost:8080/user/findall?page=1"
            }
        });
    }

后台用@RequestBody接收, @RequestBody只接收JSON对象的字符串

@ResponseBody
@RequestMapping(value = "/insert",method = RequestMethod.POST)
public String insert(@RequestBody User user){
   int result=this.userSerivce.insert(user);
   if(result==0){
       return "101";
   }
   return "100";
}

AJax提交表单数据到后台springmvc接收的更多相关文章

  1. jquery ajax提交表单数据的两种方式

    http://www.kwstu.com/ArticleView/kwstu_201331316441313 貌似AJAX越来越火了,作为一个WEB程序开发者要是不会这个感觉就要落伍,甚至有可能在求职 ...

  2. 通过jQuery Ajax提交表单数据时同时上传附件

    1.使用场景:需要使用ajax提交表单,但是提交的表单里含有附件上传 2.代码实现方式: <!-- HTML代码 --> <form method="post" ...

  3. Ajax提交表单数据(包含文件)

    1. 表单数据->JSON->后台 2. 表单序列化[方式一] jquery.serializejson.js <script src="/js/jquery.serial ...

  4. ajax提交表单向后台发送数据

    Ajax提交表单 <!DOCTYPE html> <html lang="en"> <head> <meta charset=" ...

  5. Jquery ajax提交表单几种方法

    在jquery中ajax提交表单有post与get方式,在使用get方式时我们可以直接使用ajax 序列化表单$('#表单ID').serialize();就行了,下面我来介绍两个提交表单数据的方法. ...

  6. ASP.NET 程序提交表单数据中带有html标签不能提交或者提交报错问题

    今天在公司做另外的一个项目,又奇葩的遇到一个问题. 在本地自己电脑上怎么测试都是正常的.但是先上服务器就出问题: 用富文本编辑器上传一篇文章,始终报错,又没提示具体什么错误,也没说代码错误,点击提交按 ...

  7. Jquery ajax提交表单几种方法详解

    [导读] 在jquery中ajax提交表单有post与get方式,在使用get方式时我们可以直接使用ajax 序列化表单$( 表单ID) serialize();就行了,下面我来介绍两个提交表单数据的 ...

  8. ajax提交表单序列化(serialize())数据

    知识点: $("#form").serialize();将表单数据序列化为标准URL编码文本字符串(key1=value1&key2=value2…). 以下用一个例子来演 ...

  9. ajax提交表单、ajax实现文件上传

    ajax提交表单.ajax实现文件上传,有需要的朋友可以参考下. 方式一:利用from表单的targer属性 + 隐藏的iframe 达到类似效果, 支持提交含有文件和普通数据的复杂表单 方式二:使用 ...

随机推荐

  1. Lintcode85-Insert Node in a Binary Search Tree-Easy

    85. Insert Node in a Binary Search Tree Given a binary search tree and a new tree node, insert the n ...

  2. Database operation expected to affect 1 row(s) but actually affected 0 row(s). Data may have been modified or deleted since entities were loaded

    asp.net  更新数据时报错:Database operation expected to affect 1 row(s) but actually affected 0 row(s). Data ...

  3. Python入门(一)数据类型、循环语句

    脚本语言类型: 1.编译型语言:写完代码不能执行,需要先编译     eg:c.c++.c# 2.解释性语言:不需要编译 直接执行                      eg:python.jav ...

  4. sqlite3如何判断一个表是否已经存在于数据库中 C++

    SELECT count(*) AS cnt FROM sqlite_master WHERE type='table' AND name='table_name';cnt will return 0 ...

  5. 括号生成(Java实现)

    题目: 给出 n 代表生成括号的对数,请你写出一个函数,使其能够生成所有可能的并且有效的括号组合. 例如,给出 n =3,生成结果为: [ "((()))", "(()( ...

  6. Cocos Creator学习六:加载/释放图片资源

    1.目的:学习加载图片资源.使用图片资源创建对象以及释放图片资源. 2.注意事项以及主要函数: ①注意事项:使用loadRes函数,资源必须放置在assets下的resources文件夹下(默认没有r ...

  7. Data Block -- Uncompressed

    Overview of Data Blocks Oracle Database manages the logical storage space in the data files of a dat ...

  8. cookie 和session 详解

    cookie机制采用的是在客户端保持状态的方案,而session机制采用的是在服务器端保持状态的方案. 由于采用服务器端保持状态的方案在客户端也需要保存一个标识,所以session机制可能需要借助于c ...

  9. ape 文件 转化为mp3 文件

    试了很多软件,最后才发觉 any-audio-converter最好用. 可以吧ape 按 cue切割好,然后转化成 MP3 官网可以免费下载: https://www.any-audio-conve ...

  10. windows,用c++调用mxnet做前向

    参考博客: https://blog.csdn.net/qq_34062105/article/details/82590553 https://blog.csdn.net/u012234115/ar ...