• 带复杂类的list,list<class>前台往后台传输


    1.前台

     1 $("#applyGoods").click(function(){
     2     var usid=$(this).next().text();
     3     var aid=$(this).next().next().text();
     4     var items=document.getElementsByName("eachChoose");
     5     var flag=false;
     6     var goods=new Array(); //定义一个数组格式,相当于class对象  
     7     var num=0;
     8     for(var i=0;i<items.length;i++){
     9         if(items[i].checked==true){
    10             var goodsStr={}; //定义一个数组格式,相当于class对象  
    11             num++;
    12             //当前行
    13             var tr= items[i].parentElement.parentElement;
    14             //获取第四个单元格,下标从0开始
    15             var numCell= tr.cells[3];
    16             //获取租借数量
    17             var goodsnum=numCell.getElementsByTagName("input")[0].value;
    18             //获取第六个单元格,下标从0开始
    19             numCell= tr.cells[5];
    20             var    gid=numCell.getElementsByTagName("span")[0].innerText;
    21             goodsStr.gid=gid;//class里有什么属性,就按这个格式添加
    22             goodsStr.rentnum=goodsnum;
    23             goodsStr.usid=usid;
    24             goodsStr.aid=aid;
    25             goods.push(goodsStr);//将一个class放入list  
    26             flag=true;
    27         }
    28     }
    30      var list=JSON.stringify(goods);//将json对象转换成json字符串传递到后台
    31          $.ajax({
    32                          url:"/communityMember/applyGoods",
    33                           data:{"goods":list},
    34                           type:"GET",
    35                           dataType:"json",//后台返回响应类型
    36                           //contentType:"application/json",//修改传值方式为json字符串
    37                              success:function(data){
    38                                   if(data.flag==true){
    39                                       alert("已提交申请!");
    40                                       window.location.reload();
    41                                   }else{
    42                                       alert("系统繁忙,请稍后再试试!");
    43                                   }
    44                                   
    45                              },
    46                              error:function(data){
    47                                  alert("系统繁忙,请稍后再试试!");
    48                                  console.log("error"+data);
    49                               },
    50                               timeout:3000
    51                           })
    52 
    53                              
    54     });

    2.后台

    maven项目的pom.xml文件添加依赖

    <dependency>  
        <groupId>net.sf.json-lib</groupId>  
        <artifactId>json-lib</artifactId>  
        <version>2.4</version>  
        <classifier>jdk15</classifier>  
    </dependency>

    java的controller层

     1     //申请物资
     2     @RequestMapping("/applyGoods")
     3     @ResponseBody
     4     public Map<Object,Object> applyGoods(HttpServletRequest request){
     5         HashMap<Object,Object> map = new HashMap<>();
     6         String str=request.getParameter("goods");
     7         JSONArray jsonArray = JSONArray.fromObject(str);
     8         Act_goods[] array=(Act_goods[]) JSONArray.toArray(jsonArray, Act_goods.class);
     9         int sum=0;
    10         for (Act_goods act_goods : array) {
    11             //System.out.println(act_goods.getUsid()+":"+act_goods.getAid()+":"+act_goods.getRentnum()+":"+act_goods.getGid());
    12             act_goods.setRentstate(0);
    13             int num = agMapper.insert(act_goods);
    14             sum+=num;
    15         }
    16         if(sum==array.length){
    17             map.put("flag", true);
    18         }else{
    19             map.put("flag", false);
    20         }
    21         return map;
    22     }
  • 相关阅读:
    栈的压入,弹出序列
    json格式实现批量删除
    ExtJS pagingtoolbar的使用
    Unknown initial character set index '45' received from server. Initial client ch
    事务的原子性
    整合Struts2.2+Spring3.0
    两种方法判断输入是否整数
    使用三种不同循环结构对1+2+3+...+100 求和
    使用循环的方式输出对应图形
    系统任务栏图标透明且无法打开解决办法 for Windows
  • 原文地址:https://www.cnblogs.com/57rongjielong/p/9031705.html
Copyright © 2020-2023  润新知