精华帖 (0) :: 良好帖 (0) :: 新手帖 (0) :: 隐藏帖 (0)
|
|
---|---|
作者 | 正文 |
发表时间:2011-10-23
Java代码 //获取表单值,并以json的数据形式保存到params中 var params = { list : [ { "name" : "小明", "age" : 12 }, { "name" : "小红", "age" : 14 } ] } //使用$.post方式 $.post(url, //服务器要接受的url params, //传递的参数 function cbf(data) { //alert(data); }, 'json' //返回的类型 ); }); 在url提交到的Action为: Java代码 public class AjaxLoginAction extends ActionSupport { private List list; public List getList() { return list; } public void setList(List list) { this.list = list; } } 我打印list的size() 的个数为2 这个list里面放的是2个什么对象? 可是我怎么遍历出"小红"和"小明" 我写了个Student Class有Name和Age属性 (List<Student>)list 没有用.. 换成数组也没用... JSON反序列化? 我知道JSONObject.fromObject(String); 可是怎么得到参数字符串 小白求指教... 希望各位能给个实例代码学习 声明:ITeye文章版权属于作者,受法律保护。没有作者书面许可不得转载。
推荐链接
|
|
返回顶楼 | |
发表时间:2011-10-25
....大牛们 哪去了
|
|
返回顶楼 | |
发表时间:2011-10-25
你action不就是要拿页面的list参数嘛,在页面定义list就行了啊
|
|
返回顶楼 | |
发表时间:2011-10-25
JSONObject jsonObj = JSONObject.fromObject(json);
JSONObject.toBean(jsonObj, MyBean.class); 不知道这样可行否? |
|
返回顶楼 | |
发表时间:2011-10-25
用字符串接受list。
然后在转。 |
|
返回顶楼 | |
发表时间:2011-10-25
如果action中定义了List<Student> list,params可以自己组装成&list[0].name=xxx&list[0].age=xxx&list[1].name=xxxx格式。在struts2中貌似可以自动装配成list
|
|
返回顶楼 | |
发表时间:2011-10-25
你这样组装数据已经错了,传入后台的是两个Key为list的Object [],后台的list可能被赋值了两次
|
|
返回顶楼 | |
发表时间:2011-10-26
使用普通的form也不能这么提交啊。。。
考虑下封装吧 比如: “小明”,“11”;“小红”,“12”; 后台自己拆分,先拆分号再拆逗号 |
|
返回顶楼 | |
发表时间:2011-10-26
1.$.post(..)要传递的参数的值转成json字符串
2.action中的list定义成String类型 3.拿到前台传来的json字符串再转成List<Student> |
|
返回顶楼 | |
发表时间:2011-10-26
设置返回的result的type为json 引入struts2的json包,可自定义返回json串的形式
|
|
返回顶楼 | |