• 玩转Web之Json(三)-----easy ui怎么把前台显示的dataGird中的所有数据序列化为json,返回到后台并解析


    最近做一个项目时,需要在dataGird中插入<input>,即文本输入框,当点击提交时,需要把文本框里填的数据返以及其他列的一些信息以json数组的格式返回到后台,虽然我实现了该功能,但一直没找到简便的方法,今天终于在一位版主的点拨下找到了非常简单的方法。

                var all = $("#dg").datagrid("getData");
                var json =JSON.stringify(all.rows); 


    仅仅只需要这两行代码,其中dg是datagird的id,第一行是获取表格中加载完毕后的数据,第二行是将第一行获得的数据转化成json数组。

    然后以ajax方式提交到后台即可,下面是我的提交代码,供大家参考:

      $.ajax({
                              url:'../servlet/Confirm_Order',
                              data :{msg:json},
                              dataType:'json',
                              success:function(data){   
                                if(data.msg=="订购成功"){                
                                  $.messager.alert('通知',"订购成功"); 
                                  $('#t1').datagrid('load',{
                                   });
                                }  
                                else
                                     $.messager.alert('通知',data.msg);  
                              }, 
                              error:function(){
                               $.messager.alert('通知',"错误");       
                              }     
                           });//ajax


     

    接下来就需要解析字符串了,解析该json字符串需要用到org.json这个jar包,大家可以在网上下载,下面是解析该json的代码:

    String msg=new String(request.getParameter("msg").getBytes("ISO-8859-1"),"utf-8") ; 
    org.json.JSONArray jsonArray;
    jsonArray = new org.json.JSONArray(msg);
    			
    int jsize=jsonArray.length();
    for(int i=0;i<jsize;i++){
    	org.json.JSONObject jsonObj = jsonArray.getJSONObject(i);
            String num=jsonObj.getInt("prolist_num");  //这里根据实际情况写就行,prolist_num是json数组的一个键
    	}
    


     


     

  • 相关阅读:
    反射学习(三)--------利用反射调用方法
    list实体数据分组
    利用dockerfile制作基于centos7的lnmp镜像(亲测,详细版)
    基于数组的shell脚本编写
    Ansible中文权威指南
    几种方法来实现scp拷贝时无需输入密码
    Java 中&&和&的区别
    常用javaScript小常识
    mysql数据库函数
    Hidden的应用
  • 原文地址:https://www.cnblogs.com/oversea201405/p/3752290.html
Copyright © 2020-2023  润新知