您的位置:首页 > 产品设计 > UI/UE

easy ui怎么把前台显示的dataGird中的所有数据序列化为json,返回到后台并解析

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

[javascript] view
plaincopy





var all = $("#dg").datagrid("getData");

var json =JSON.stringify(all.rows);

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

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

[javascript] view
plaincopy





$.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的代码:

[java] view
plaincopy





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数组的一个键

}
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐