ajax从JSP传递对象数组到后台
来源:互联网 发布:淘宝店充值话费怎么开 编辑:程序博客网 时间:2024/06/07 02:16
今日工作中遇到了需要从JSP传递对象数组到后台的需求,网上辗转找了很多资料,终于解决。苦于网上很多资料不全,故记录下详细解决过程。如下:
JSP:
function addAccount(){debugger;var html = '';var ary = $("#match_account").find("p");var _list = new Array();if(ary.length){for(var i = 0,len = ary.length;i < len;i ++){var account = new Object();html += '<li class="fl mb8" data-id="'+ary[i].id+'" data-sort="0">';html += '<span class="mr8 display-ib" style="background:#eee;padding:0px 5px 6px 5px">';html += '<span data-id="">'+ary[i].innerHTML+'</span>';html += '<a onclick="deleteAccount(this);" href="javascript:;" class="js-btn-remove-tag ml4" style="vertical-align:5px;color:#999;" title="删除">x</a>';html += '</span>';html += '</li>';account.accountId = ary[i].id; account.account = ary[i].innerHTML; _list.push(account);}$.ajax({type: "post",url: "${ctx}/companyAccount/addContributeAccounts",data : {list : JSON.stringify(_list)},async: false,success: function (json) {var result = json.obj.result;if(result != 1){layer.error('添加账号失败.');}}});}$("#contribute_account").append(html);}
关键之处有三:
一,定义数组
var _list = new Array();二,定义对象,并迭代添加对象属性,最后push进数组
var account = new Object();
account.accountId = ary[i].id; account.account = ary[i].innerHTML; _list.push(account);三,提交时转换数组对象
data : {list : JSON.stringify(_list)}
后台java:
/** * 添加投稿账号 */@RequestMapping(value = "addContributeAccounts")@ResponseBodypublic JsonResult addContributeAccounts(String list) {JSONArray ary = JSONArray.fromObject(list);if(ary != null && ary.size() > 0){List<RegionContributeAccount> accountList = (List<RegionContributeAccount>)JSONArray.toCollection(ary, RegionContributeAccount.class);for(RegionContributeAccount account : accountList){companyAccountService.insertContributeAccount(account);}}Map<String, Object> obj = new HashMap<String, Object>();obj.put("result", 1);return JsonResult.success(obj);}
后台要点有二,
一,转换ary数组
JSONArray ary = JSONArray.fromObject(list);二,数组转自定义java对象
List<RegionContributeAccount> accountList = (List<RegionContributeAccount>)JSONArray.toCollection(ary, RegionContributeAccount.class);
自此,便打通前后端任督二脉。
阅读全文
1 0
- ajax从JSP传递对象数组到后台
- ajax 传递一个对象数组到后台
- ajax传递json对象数组到后台
- Ajax 传递数组到后台
- ajax 传递数组到后台
- springMVC通过ajax传递参数list对象或传递数组对象到后台
- 从jsp传递json到struts2后台
- ajax post传递数组到后台
- AJAX传递数组到后台处理
- php---ajax传递多维数组到后台
- ajax传递数组参数到后台
- jsp页面传递数组参数到后台
- $.ajax传递json对象到后台
- $.ajax传递json对象到后台
- jsp传递list对象到后台
- 关于Ajax传递数组到后台,后台处理方式
- JQuery ajax 提交对象数组到后台
- ajax 传对象数组到后台
- 静态、全局和局部变量在作用域和内存空间的详解
- Mybatis--查询collection--List<String>
- 开发工具总结
- 更新二进制位-LintCode
- add Shell命令中提示opendir failed, Permission denied解决方法
- ajax从JSP传递对象数组到后台
- 固件#01--USB转I2C底层代码和原理
- Android 百分比布局库(percent-support-lib) 解析与扩展
- Android 卸载某个应用
- 并发 并行 同步 异步 多线程的区别
- Linux之mv
- 关于微信网页授权开发总结整理
- Linux中设置服务自启动的三种方式
- (2017夏令营CONTEST4)NKOJ 3823 水果怪 (组合数)