Struts2 如何获得action中传到jsp页面的json格式集合对象。。。。求解
-------------------------------------------------------------------------------------...
------------------------------------------------------------------------------------
--------------------------------------------------------------------------------------- 展开
--------------------------------------------------------------------------------------- 展开
3个回答
展开全部
楼上的这种办法,因为response写入的是字符串,需要你在前台js使用eval函数将字符串转换成json对象,才可以使用data.results的调用
使用struts2的话,可以考虑使用struts2集成的返回json功能,不用写入到response:
1、在配置文件中,定义package的extends,<package name="ajaxAction" extends="json-default">;
2、下面的infoDxt就是我在infoDxtAction中的一个bean,struts2会自动的将该对象转换成json,而且bean里面还可以使用@JSON(format="yyyy-MM-dd") 这种标注方式,指定json中的格式
<action name="AjaxDxtShow" class="infoDxtAction" method="show">
<result type="json">
<param name="root">infoDxt</param>
</result>
</action>
3、针对上面的配置,在action中写下show方法就好了,不能是void方法,需要返回值
使用struts2的话,可以考虑使用struts2集成的返回json功能,不用写入到response:
1、在配置文件中,定义package的extends,<package name="ajaxAction" extends="json-default">;
2、下面的infoDxt就是我在infoDxtAction中的一个bean,struts2会自动的将该对象转换成json,而且bean里面还可以使用@JSON(format="yyyy-MM-dd") 这种标注方式,指定json中的格式
<action name="AjaxDxtShow" class="infoDxtAction" method="show">
<result type="json">
<param name="root">infoDxt</param>
</result>
</action>
3、针对上面的配置,在action中写下show方法就好了,不能是void方法,需要返回值
追问
这个配置我知道 但是具体在action与jsp中怎么做还是不知道 能给个例子吗 亲
追答
你的这个应用是要填充表格?
那我建议你在action中定义一个List,然后返回的root直接是这个List,action中,setList(),getList();
在你的具体方法中对这个list进行赋值就好了,然后在js中就可以直接使用data[i].xxx进行表格填充了
展开全部
$.post("look.action",{"id":id},function(data){
alert(data);
$.each(data.list,function(i,value){
alert(value.name);//value就是你的TDATE 如果你的TDATE有name的话。可以这样
});
});
后台的list 弄成全局变量。private List<TDate> list; 加上get set;
alert(data);
$.each(data.list,function(i,value){
alert(value.name);//value就是你的TDATE 如果你的TDATE有name的话。可以这样
});
});
后台的list 弄成全局变量。private List<TDate> list; 加上get set;
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
JSONObject json = new JSONObject();
json.put("results", list);
write(json.toString());
然后你就可以在jsp中利用 data.results得到你的list数据了
json.put("results", list);
write(json.toString());
然后你就可以在jsp中利用 data.results得到你的list数据了
追问
追答
你上面获取的方式有问题?1,通过ajax获取json数据,2,获取直接定义全局变量,return到的那个jsp页面来获取
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询