原始方式是这样的:

var prId = $("#prId").val();
var prNumber = $("#prNumber").val();
var prPrname = $("#prPrname").val();
var prRegion = $("#prRegion").val();
var prPersonid = $("#prPersonid").val();
var prRemarks = $("#prRemarks").val();

var defaultSetting = {
type : "post",
dataType : "json",
async : true,
loadingFlag : true,
traditional: false,
contentType: "application/x-www-form-urlencoded",
processData: true,

data: {

prId: prId,
prNumber: prNumber,
prPrname: prPrname,
prRegion: prRegion,
prPersonid: prPersonid,
prRemarks: prRemarks
},

};

当时试着用form序列化(form.serialize()),没成功映射到对象才那样写的,后来才知道。原来是因为form的input等标签没有name属性导致的。

后来知道了简略版写成这样。

var data=form.serialize()

var defaultSetting = {
type : "post",
dataType : "json",
async : true,
loadingFlag : true,
traditional: false,
contentType: "application/x-www-form-urlencoded",
processData: true,

data: data,

};

如果data的数据是动态的,像更新时候追加属性的情况可以这样写:

var data = $("#form").serializeJson();

$.extend(data, {userId: $(this).data("dataId")});

var defaultSetting = {
type : "post",
dataType : "json",
async : true,
loadingFlag : true,
traditional: false,
contentType: "application/x-www-form-urlencoded",
processData: true,

data: data,

};

当遇到文件上传时候,就要改改了,写成下面这样:

var formData =new FormData($("#editForm")[0]);

formdata.append("dustId", $(this).data("dataId"));

var defaultSetting = {
type : "post",
dataType : "json",
async : true,
loadingFlag : true,
traditional: false,
contentType: "application/x-www-form-urlencoded",
processData: true,

data: formData ,

};

controller层:

public void add(Project project)

用对象接受这样是没问题的。

以上方式是最常见的提交方式。

下面说一种contentType: application/json提交的方法。

这种方式提交文件是不行的

var formdata= $("#editForm").serializeJson()

var defaultSetting ={

url: action,
data: JSON.stringify(formdata),
cache: false,
contentType:"application/json",
processData: false,
async: false

}

controller层接受的时候

public void add(@RequestBody Role role)这样才可以映射到。

ajax提交的问题点记录的更多相关文章

  1. Ajax 提交KindEditor的数据

    这次我是在EasyUI中使用了KindEditor的编辑器,按照官方给的代码,总是无法获取编辑器里面的值(内容),如下:         KindEditor.ready(function (K) { ...

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

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

  3. ThinkPHP中ajax提交数据

    最近在做项目时遇到了一些需要从页面用ajax提交数据到后台的操作,无奈本人技术有限,网上苦寻,研究了一下ajax和thinkPHP的结合,黄天不负苦心人,终于搞定了. 闲话少叙,进入正题:我需要从页面 ...

  4. ajax提交与上传文件同步

    我们经常担心文件上传,最烦比,可以推断,我们上传的文件大小,格风格等等一系列的推理验证.所以,我们只能ajax提交验证.ajax异步提交太麻烦,我想太多的变化代码,事实上,我们使用JQuery当插件, ...

  5. ASP.NET前台html页面AJAX提交数据后台ashx页面接收数据

    摘要:最近在写网站,好不容易弄好了需求又变了,没错企业的门户网站硬要弄成后台管理系统一样,没办法作为小工的我只能默默的改.前台HTML页面需要提交数据到后台处理,又不能用form表单,于是乎研究了1天 ...

  6. javascript表单的Ajax 提交插件的使用

    Ajax 提交插件 form.js 表单的下载地址:官方网站:http://malsup.com/jquery/form/ form.js 插件有两个核心方法:ajaxForm()和ajaxSubmi ...

  7. jquery实现ajax提交表单信息

    最近在思考优化项目,想自己扩展一个jquery自动获取表单中的数据进行ajax提交.本人没有完整性学习jquery,基本上是现学现找,有点困难. 主要是扩展和拼接json转对象 很简单,附上代码: ; ...

  8. ajax提交form表单

    1. ajax提交form表单和不同的form表单的提交主要区别在于,ajax提交表单是异步提交的,而普通的是同步提交的表单. 2. from视图部分 <form id="loginF ...

  9. 【ajax 提交表单】多种方式的注意事项

    在业务中,可能因为表单内容过于庞大,字段过于繁杂,如果人为去拼接的话 ,需要耗费大量的时间和精力,与此同时,代码看上去也是冗余不堪. 所以,提交表单的时候如果能整个表单数据整体提交,那是非常开心的事情 ...

随机推荐

  1. [HAOI2006]聪明的猴子 题解

    题意: 在一个热带雨林中生存着一群猴子,它们以树上的果子为生.昨天下了一场大雨,现在雨过天晴,但整个雨林的地表还是被大水淹没着,部分植物的树冠露在水面上.猴子不会游泳,但跳跃能力比较强,它们仍然可以在 ...

  2. Excel催化剂开源第34波-SM.MS图床API调用(用POST上传multipart/form-data内容)

    日常做网抓数据,都是以GET请求为主,偶尔遇到需要POST请求的,一般POST的参数只是一串字符串就可以了,通过构造字符串也很容易完成,但此次SM.MS的API接口要求是Content-Type: m ...

  3. springboot+mongodb 按日期分组分页查询

    List<Integer> types = new ArrayList<>(); types.add("条件1"); types.add("条件2 ...

  4. Kafka集群部署以及使用

    Kafka集群部署 部署步骤 hadoop102 hadoop103 hadoop104 zk zk zk kafka kafka kafka http://kafka.apache.org/down ...

  5. JDK(Linux)

    百度云:链接:http://pan.baidu.com/s/1gfa9sEB    密码:bpqr 官网下载网址:http://www.oracle.com/technetwork/java/java ...

  6. linux初学者-磁盘加密篇

    linux初学者-磁盘加密篇 因为保密需要,一般系统中会在文件和磁盘中进行加密,但是文件的加密比较容易破解,不安全.所以在特殊需要下,会对磁盘进行加密,磁盘加密后在磁盘损坏的同时,其中的数据也会损坏, ...

  7. Cordova-iOS SDK封装

    源码编译与制作静态库 下载cordova-ios源码,下载地址为:cordova-ios 解压后使用Xcode进行编译,编译选定模拟器和Generic iOS Device,cmd+B,编译成功(Dy ...

  8. 【iOS】图片缩放动画

    iOS 开发中,可用 UIView 的下述方法实现图片的缩放动画效果: + transitionWithView:duration:options:animations:completion: 示例代 ...

  9. 【iOS】UIAlertView 点击跳转事件

    iOS 开发中,UIAlertView 经常用到.这里记录下曾用到的点击跳转事件. UIAlertView *alert = [[UIAlertView alloc] initWithTitle:@& ...

  10. 简易数据分析 08 | Web Scraper 翻页——点击「更多按钮」翻页

    这是简易数据分析系列的第 8 篇文章. 我们在Web Scraper 翻页--控制链接批量抓取数据一文中,介绍了控制网页链接批量抓取数据的办法. 但是你在预览一些网站时,会发现随着网页的下拉,你需要点 ...