前台能不能给后台传这样的json数据:一个json内有个值和一个json数组 请问前台给怎么传,后台该怎么接收
就是比如这样的一个json数据{"a":"","b":"","一个json数组":[{"x":"","y":"","z":""},{"x":"","y":"","z":"...
就是比如这样的一个json数据{"a":" ","b":" ","一个json数组":[{"x":" " , "y":" " , "z":" " },{"x":" " , "y":" " , "z":" " },{"x":" " , "y":" " , "z":" " }]}
我用的是springmvc, 最好能有具体代码,谢谢。 展开
我用的是springmvc, 最好能有具体代码,谢谢。 展开
1个回答
展开全部
你很懒。
第一步,封装json.
var jsonStr = [{'name':'jim' , 'age':20} , {'name':'king' , 'age':26},{'name':'jge' , 'age':30}]
第二部,ajax。
jQuery.ajax({
type: "post",
url: url,
dataType : 'json',
data : {'mydata':jsonStr},
success: function(data,textStatus){
alert("操作成功");
},error: function(xhr,status,errMsg){
alert("操作失败!");
}
});
第三部,后台方法接收。
String jsonStr = ServletActionContext.getRequest().getParameter("mydata");
JSONArray jsonArray = JSONArray.fromObject(jsonStr);
for(int i=0;i<jsonArray.length(); i++){
JSONObject jsonJ = jsonArray.getJSONObject(i);
jsonJ.getInt("name");
jsonJ.getString("age");
}
.......ok不。
第一步,封装json.
var jsonStr = [{'name':'jim' , 'age':20} , {'name':'king' , 'age':26},{'name':'jge' , 'age':30}]
第二部,ajax。
jQuery.ajax({
type: "post",
url: url,
dataType : 'json',
data : {'mydata':jsonStr},
success: function(data,textStatus){
alert("操作成功");
},error: function(xhr,status,errMsg){
alert("操作失败!");
}
});
第三部,后台方法接收。
String jsonStr = ServletActionContext.getRequest().getParameter("mydata");
JSONArray jsonArray = JSONArray.fromObject(jsonStr);
for(int i=0;i<jsonArray.length(); i++){
JSONObject jsonJ = jsonArray.getJSONObject(i);
jsonJ.getInt("name");
jsonJ.getString("age");
}
.......ok不。
更多追问追答
追问
最外层是一个json数据,里面才包含一些key/value的值和一个json数组,这样我就不知道该怎么封装和解析了.....求大神再写写 谢谢谢谢谢!!
追答
你的意思是josn里是键值对,还有个josn数组吧?josn数组和那些键值对是平级的?那为啥不把键值对单独封装一个josn,josn数组是个josn. 传参时data : {'mydata':jsonStr},多加个参数不就好了。 也就是说,你的A B封装一个josn,你的那些XZY是个josn。。。
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询