public class RouteItemManageReq {
private List<WorkNodeReq> targetNodes;
private RouteItemReq obj;
public List<WorkNodeReq> getTargetNodes() {
return targetNodes;
}
public void setTargetNodes(List<WorkNodeReq> targetNodes) {
this.targetNodes = targetNodes;
}
public RouteItemReq getObj() {
return obj;
}
public void setObj(RouteItemReq obj) {
this.obj = obj;
}
}
    public @ResponseBody List<SpiderBaseRespCenterExt> pushAddRouteItem(RouteItemManageReq req,Model model) {
return nodeManageService.pushAddRouteItem(req);
}

要在ajax中提交类似这样的结构,不能直接将js直接附加到ajax请求的data上,否则不管是数组还是属性都会以obj[prop][subprop]的方式传递到服务端,导致spring mvc无法解析而报错。

所以,如果在ajax中需要通过拼接成string的方式传递。类似如下:

            for(var x=0;x<targetNodes.length;x++) {
formData = formData + "targetNodes[" + x + "].clusterName=" + targetNodes[x].split(":")[0] + "&";
formData = formData + "targetNodes[" + x + "].ip=" + targetNodes[x].split(":")[1] + "&";
formData = formData + "targetNodes[" + x + "].port=" + targetNodes[x].split(":")[2] + "&";
}
formData = formData + "obj.routeItem.serviceId=" + $("#myModal-route input[name='serviceId']").val() + "&";
formData = formData + "obj.routeItem.systemId=" + $("#myModal-route input[name='systemId']").val() + "&";
formData = formData + "obj.routeItem.subSystemId=" + $("#myModal-route input[name='subSystemId']").val() + "&";
formData = formData + "obj.routeItem.appVersion=" + $("#myModal-route input[name='appVersion']").val() + "&";
formData = formData + "obj.routeItem.companyId=" + $("#myModal-route input[name='companyId']").val() + "&";
formData = formData + "obj.routeItem.clusterName=" + $("#myModal-route input[name='clusterName']").val(); $.ajax({
url: "/middle/00000110.json", //请求的url地址
dataType: "json", //返回格式为json
// async: false, //请求是否异步,默认为异步,这也是ajax重要特性
data: formData, //参数值
type: "GET", //请求方式

拼接其实是个很不好的实现,维护成本高,极容易出错,所以建议大家使用js模板库比如jsrender,可参考http://www.cnblogs.com/zhjh256/p/5978907.html。

ajax提交复杂对象数据的更多相关文章

  1. spring mvc接收ajax提交的JSON数据,并反序列化为对象

    需求:spring mvc接收ajax提交的JSON数据,并反序列化为对象,代码如下: 前台JS代码: //属性要与带转化的对象属性对应 var param={name:'语文',price:16}; ...

  2. 使用ajax提交的json数据,产生筹码问题

    使用ajax提交的json数据,我们必须添加produces注解,如下所示.否则将会产生乱码 方法一:添加produces注解 @ApiOperation(value = "删除日志&quo ...

  3. 使用@RequestBody注解获取Ajax提交的json数据

    最近在学习有关springMVC的知识,今天学习如何使用@RequestBody注解来获取Ajax提交的json数据内容. Ajax部分代码如下: 1 $(function(){ 2 $(" ...

  4. Ajax 提交KindEditor的数据

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

  5. ajax提交含有html数据时的处理方法

    这两天在做一个文章内修改的功能,由于前端选用的Extjs控件库,于是就使用Ext.form.HtmlEditor. 在使用ajax提交数据的时候,需要提交包含有html代码的数据.这时候问题就来了,不 ...

  6. MVC中用ajax提交json对象数组

    应用场景:在前端用ajax向服务器提交json对象数组,在controller的以对象数组作为函数的参数,提交的json数组直接转为服务器端的对象数组. 如: 要将json对象数组[{Id:1,Nam ...

  7. jquery序列化from表单使用ajax提交返回json数据(使用struts2注解result type = json)

    1.action类引入struts2的"json-default"拦截器栈 @ParentPackage("json-default") //示例 @Paren ...

  8. ajax 提交 json格式数据到后台

    例子:$.ajax({ type: 'POST', url: "/ROOT/modify.do", contentType: "application/json" ...

  9. 关于上传文件 非ajax提交 得到后台数据问题

    <form name="configForm" id="configForm" method="post" action=" ...

随机推荐

  1. 字节对齐导致的iOS EXC_ARM_DA_ALIGN崩溃

    本文原链接: http://www.cnblogs.com/zouzf/p/4455167.html 先看一下这个链接:http://www.cnblogs.com/ren54/archive/201 ...

  2. Eclipse中用Logcat调试程序

    调试程序的一种方法是用Logcat程序,在Eclipse中windows->show view->other->android->logcat可打开. 然后程序加入androi ...

  3. iOS开发-Xcode升级后插件失效解决办法

    打开terminal,输入如下命令: | xargs -I{} defaults write {} DVTPlugInCompatibilityUUIDs -array-add `defaults r ...

  4. 转载 jquery $(document).ready() 与window.onload的区别

    Jquery中$(document).ready()的作用类似于传统JavaScript中的window.onload方法,不过与window.onload方法还是有区别的. 1.执行时间 windo ...

  5. [原]如何在Android用FFmpeg+SDL2.0解码图像线程

    关于如何在Android上用FFmpeg+SDL2.0解码显示图像参考[原]如何在Android用FFmpeg+SDL2.0解码显示图像 ,关于如何在Android使用FFmpeg+SDL2.0解码声 ...

  6. Flex知识备忘

    div被flex遮挡 //如果设置z-index无效,那么设置flex加载参数 params.wmode = "Opaque";

  7. C# 解析百度天气数据,Rss解析百度新闻以及根据IP获取所在城市

    百度天气 接口地址:http://api.map.baidu.com/telematics/v3/weather?location=上海&output=json&ak=hXWAgbsC ...

  8. MeshCombineUtility.cs method `GetTriangleStrip' of type `UnityEngine.Mesh' could be found

    1) Assets/Standard Assets/Scripts/MeshCombineUtility.cs(27,74): error CS1061: Type `UnityEngine.Mesh ...

  9. 分享使用NPOI导出Excel树状结构的数据,如部门用户菜单权限

    大家都知道使用NPOI导出Excel格式数据 很简单,网上一搜,到处都有示例代码. 因为工作的关系,经常会有处理各种数据库数据的场景,其中处理Excel 数据导出,以备客户人员确认数据,场景很常见. ...

  10. Java异常(一) Java异常简介及其架构

    概要 本章对Java中的异常进行介绍.内容包括:Java异常简介Java异常框架 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3544168.html ...